从Linux服务器上的多个客户端接收多个TCP消息的最佳方法是什么?
我正在尝试执行类似于flightaware / flightradar24 / adsb-exchange的操作,但是不确定如何处理。
我发现对于客户端代码,socat
是最佳选择。由于每个客户端每秒将在端口上接收多达200-600条消息,并且需要无延迟地将每条消息转发到端口(curl
-使每条消息引起过热和积压问题)
我尝试使用socat
,但是我不知道如何处理这些消息。就像我设置监听器时一样,它仅连接到在监听器的socat
监听开始后运行socat
的客户端,并且忽略以前的socat
连接。似乎最终也会断开套接字,并且在侦听器服务器需要重新启动的情况下没有冗余。
如果可能的话,我还想一种方法来标识发送消息的客户端,如果可能的话,可以通过ip或在socat
对其进行代理之前在端口上的消息中添加一些内容(对硬件的影响很小)
对于这个模糊的问题,我深表歉意,我已经考虑了几个星期如何最好地做到这一点,并且对那些已经做过这样的事情的人进行了不断的研究/提问,但是我得到的答复是“您需要找出如何发送大量的TCP消息”,我不知道接收这种消息的最佳方法。