【发布时间】:2015-02-16 22:15:51
【问题描述】:
奇怪的是,我无法在 Google 中找到关于 NIO.2 异步 IO 性能与通过 java.nio.channels.Selector 使用 NIO 的多路复用 IO 的明确答案。
所以,我的问题是: NIO.2 AsynchronousChannel 的性能是否比 NIO Selector 更好? 当然,我对不同负载配置文件下的服务器端事物感兴趣 - 同时连接数/平均连接寿命/流量。
我能找到的唯一信息是 Windows IOCP 略好于 Windows select。
【问题讨论】:
-
或者你可以只使用基于线程的 I/O...它执行得很好,而且通常比异步 I/O 更好。
-
两者的目的不同。话虽如此,使用选择器可以有效地减少 CPU 和内存占用,因为您在单线程上。这也有助于调试。更多线程 = 更多痛苦
标签: java performance nio nio2