我想在使用旧套接字编程模型(每个套接字一个线程)和使用 java.nio 的新套接字编程模型之间进行选择。当我阅读这篇关于非阻塞套接字架构的文章时,我注意到该架构是基于来自客户端的请求的序列化。
根据文章,客户端应用程序同时向服务器执行请求。选择器收集它们,创建密钥,并将它们发送到服务器。所以这篇文章让我很困惑,因为序列化不能支持服务器的可扩展性。
如果您有 10000 个客户端连接到服务器,那么处理客户端的所有子请求应该会有一些延迟。另一方面,我读到将服务器扩展到 1000 个客户端的唯一方法是使用 java.nio。
这是文章: http: //archive.oreilly.com/pub/a/onjava/2002/09/04/nio.html?page =2