【发布时间】:2014-03-20 06:09:56
【问题描述】:
我需要通过无线网络从移动的计算机发送连续的消息流(带有时间戳和 x/y 坐标的简单文本消息)。会有很多这样的短消息(比如每秒 200 条),不幸的是,网络连接很可能不可靠,因为发送设备会不时离开 WLAN 区域......当连接不可用时,所有即将发送的消息应该被缓冲,直到连接再次备份。传输消息的顺序无关紧要,因为它们包含时间戳,但必须传输所有消息。
发送这些电报的简单但可靠的方法是什么?是否可以只使用“普通”的 TCP 或 UDP 套接字连接?连接暂时断开时是否会缓冲消息并在之后自动发送?还是直接检测并报告连接丢失,因此我可以缓冲消息并尝试自己定期重新连接?像 Netty 这样的库有帮助吗?
我还考虑过使用代理来代理通信(例如 ActiveMQ 代理网络)作为替代方案。这里的开销会不会太大?!在这种情况下,您会推荐另一个消息传递中间件吗?
【问题讨论】:
标签: java sockets activemq netty