当activemq代理被消息淹没或消费者失败时,一旦达到某些(可配置的)限制,它将停止接受消息。在Broker Networks中,这种效应可以消除整个集群。
我目前正在使用内存限制的默认配置,并遇到以下行为:
如果消费者现在重新联机,它将尝试重新连接到其中一个群集节点,但节点将不接受连接,因为这会创建因代理已满而无法处理的咨询消息。
我如何配置内存限制,以便限制和阻止我的生产目的地,但经纪人仍然可以接受建议,以便我的消费者可以撤销?
答案 0 :(得分:0)
您应该能够使用producerFlowControl来减缓生产者的速度,以免压倒您的经纪人。话虽这么说,这是默认启用的,所以你可能已经使用它了......
我会尝试这样的事情(假设一个8GB的盒子左右)......
应该限制生产者并为您的系统留出资源以运行/恢复/接受消费者连接......