繁体   English   中英

Java的NIO2 API是用NIO编写单线程多路复用服务器的替代品吗?

[英]Is Java's NIO2 API a replacement for writing a single-threaded multiplexed server with NIO?

我正在学习如何使用NIO写一个泥(我没有排除更高级别的库,但我也想学习低级操作)。

在我的阅读中,我了解了NIO2。 由于我已经在这个项目中使用Java 7,我想知道我用来编写单线程多路复用服务器的NIO操作是否在NIO2中没有被替换 - 也就是说,可能更简单。 据我所知,NIO2的相关部分对我来说是异步类。 然而,我没有足够的经验知道这些是否必要或只是一个不同的/新的抽象,我不一定需要代替基本的多路复用器。

或许变得更简单了。

恕我直言NIO2比NIO更复杂,比如NIO比普通IO更复杂。

它支持异步IO调用,但这些调用比使用它更难。 NIO或普通IO

如果您有Inifiniband,NIO2可以为您提供更低的延迟和更高的吞吐量。 如果你有普通的以太网,我没有发现它有很大的不同。

如果您想要简单,请使用普通IO。

使用不同的编程模型,它是一种替代而非替代。 如果有的话,我不会说它简单得多。 如果你想简单使用java.net和线程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM