我正在为物联网建立TCP / TLS服务器。我正在将Java NIO与Reactor模式结合使用,以实现随时准备为服务器服务的非阻塞。一些服务器操作可能需要花费几秒钟的时间,因此我选择对工作线程使用NIO。什么是更好的?保留大量的大多数为空闲的连接(将超过10000个连接),还是为每个请求强制打开连接会更好?什么是更具可扩展性和性能的?我尝试搜索它,但是使用NIO找不到Java比较。

最佳答案

在对测试环境进行研究和试用后,我决定采用并行方式。我对使用并发连接而不是每5秒创建一个新连接的开销进行了基准测试。我设置了类似于MigratoryData服务器的linux。

资源:
我的基准
MigratoryData解决10M问题(https://mrotaru.wordpress.com/2015/05/20/how-migratorydata-solved-the-c10m-problem-10-million-concurrent-connections-on-a-single-commodity-server/

10-06 05:12
查看更多