在什么情况下我们应该在网络编程中选择java bio或Java nio

时间:2015-07-12 02:37:09

标签: java network-programming nio

使用java实现消息传递服务器时,我们应该选择Java bio还是Java nio?需要考虑哪些因素?

1 个答案:

答案 0 :(得分:0)

NIO允许您仅使用一个(或几个)线程来管理多个通道(网络连接或文件),但成本是解析数据可能比从阻塞中读取数据时更复杂一些流。

如果您需要同时管理数千个打开的连接,每个只发送一些数据,例如消息服务器,在NIO中实现服务器是一个优势。同样,如果您需要与其他计算机保持大量打开的连接,例如在P2P网络中,使用单个线程来管理所有出站连接可能是一个优势(BIO

如果您使用带宽非常高的连接,一次发送大量数据,则应该选择标准BIO服务器实现。

阅读本教程了解更多详情

Java NIO vs. IO