是主题和订阅者方法的新手,并尝试探索主题订阅者方法,以便在主题上发布消息并在客户端订阅发布的消息。
当我研究这个方法时,我在一些文章中读到生产者和订阅者之间的连接在生产者或订阅者关闭之前不会终止。因此,我尝试使用 Wireshark 检查连接状态,以了解正在传输多少数据包以及生成器和数据包传输的频率订阅者我得到了以下结果。
据我所知,有人可以解释一下网络上发生了什么吗?数据包是否正在传输以保持连接活动?如果是这样,则数据包每10秒传输一次,可能 增加时间从 10秒增加 ?
为什么要求一个客户端保持连接活动的可能性,每10秒 190字节。如果我使用 3500左右的多个客户端,那么我认为这可能会导致网络问题。
使用 Java 6 with ActiveMQ 来探讨这个问题。
提前致谢。
答案 0 :(得分:0)
您可以使用代理和客户端传输上的maxInactivityDuration设置来将超时时间增加到在您感觉舒适的时间段发送ping的时间点。需要记住的是,不活动持续时间越长,如果套接字未以发送fin包的方式关闭,则代理注意到客户端连接已经丢失所需的时间越长。
如果线路上有其他消息流量,只有当连接空闲时,客户端和代理才会向对方发送保持活动帧。