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