您的位置:首页 > 编程语言 > C语言/C++

Activemqcpp 在接收设置了TTL的消息时候,出现receive timeout接收不到消息的问题

2011-12-30 11:00 316 查看
问题描述:

有一个消息的生产者,向Activemq发送带有存活时候ttl的消息。然后另外一个consumer通过receive读取消息。最后发现在读取几条消息后就出现超时读取不到消息。

问题原因:

因为,activemq server和activemq client两台机器时间不同步造成的。client的系统时间大于server的,所以当client用本地时间去请求消息的时候,服务器比较消息时间和client时间发现client时间远远大于消息的TTL,所以默认这些消息对于这个client都是超时的,从而不再接收这些消息。

解决方案:

提高消息的TTL,还有就是同步server和client的机器时间

推荐第二个方案。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐