请告知创建自定义二进制协议服务器的最佳解决方案。服务器应该通过 TCP/IP 上的二进制协议接受来自多个设备的通信。
是否有任何现有的服务器/框架解决方案可用?即node.js适合解决这个问题吗?首选的解决方案是面向 Java 的。
提前致谢!
更新:需要二进制协议来减少通信数据量。协议的任何文本格式都可能过于冗长。此外,设备的协议已经指定。
我前段时间实现了这样的事情。为此,我使用了两个标准的 Java API:
注意:有时当您不确定客户端和服务器之间会发生什么样的会话模式(例如,如果他们希望首先通过 TCP/IP 发送数据),从 Socket 读取数据并也可以在不同的线程中将数据写入同一个 Socket。
基本思想是java.net
Sockets
和ServerSockets,
线程的组合,以及基于 和 设施的协议DataOutput
实现DataInput
。