【发布时间】:2010-09-21 00:07:48
【问题描述】:
什么时候从 java.net 切换到 java.nio 更好? .net(不是 Microsoft 实体)更易于理解和熟悉,而 nio 具有可扩展性,并带有一些额外的漂亮功能。
具体来说,我需要针对这种情况做出选择:我们有一个控制中心管理多个远程站点的硬件(每个站点都有一台计算机管理多个硬件单元(收发器、TNC 和旋转器))。我的想法是在每台机器上编写一个服务器应用程序,作为从控制中心到无线电硬件的网关,每个单元都有一个插座。根据我的理解,NIO 是针对一台服务器,多台客户端,但我想的是一台客户端,多台服务器。
我想第三种选择是使用 MINA,但我不确定这是否会在一个简单的问题上投入过多。
每台远程服务器最多有 8 个连接,都来自同一个客户端(用于控制所有硬件,以及单独的 TX/RX 套接字)。但是,单个客户端将希望同时连接到多个服务器。与其将每个服务器放在不同的端口上,是否可以在客户端使用通道选择器,还是在客户端使用多线程 io 并以不同方式配置服务器更好?
实际上,由于远程机器仅用于与其他硬件交互,RMI 或 IDL/CORBA 会是更好的解决方案吗?真的,我只是希望能够从硬件发送命令和接收遥测数据,而不需要编写一些应用层协议来完成。
【问题讨论】:
标签: java networking io nio