当代理达到配置的限制时,我想将我的 ActiveMQ 生产者配置为故障转移(我正在使用 Stomp 协议)。我想让消费者继续从超载的经纪人那里消费,有增无减。
阅读 ActiveMQ 文档,看起来我可以将 ActiveMQ 配置为在代理达到其限制(内存或磁盘)时执行以下操作之一:
producerFlowControl="true"
使用(通过阻止发送)减慢消息- 使用时抛出异常
sendFailIfNoSpace="true"
- 以上都不是,在这种情况下..我不确定会发生什么?恢复到 TCP 流控制?
看起来这些东西都不是为了触发生产者故障转移而设计的。生产者在连接失败时将进行故障转移,但据我所知,当它发送失败时(例如,由于生产者流控制)。
那么,我是否可以将代理配置为在达到其限制时拒绝连接?或者我最好的选择是检测生产者方面的减速,并手动重新配置我的生产者以使用不同的代理?
谢谢!