activemq-慢消费者处理

PendingMessageLimitStrategy

慢消费者会对non-durable topic带来问题。慢消费者会强制代理在内存中保留旧消息。一旦填满,就会进一步减缓消费速度。

解决方案:使用PendingMessageLimitStrategy策略。

除了在预获取缓冲区设置大小之外,在内存中保留待处理消息。通过该策略设定待处理消息大小。

ConstantPendingMessageLimitStrategy :设定固定值。
PrefetchRatePendingMessageLimitStrategy:设置乘数因子(在prefetchSize的基础上,乘该乘数因子,即为设定的保留值。)

或者:

**注:**limit的值如果等于0,则除了预获取量之外,不保留任何消息。如果大于0,保留该消息量,如果超过数量限制,则丢弃消息。如果小于0,禁用丢弃消息。此外,设定的保留值应该大于prefetchSize。

MessageEvictionStrategy 

该策略针对的是慢消费者,超过保留的数量限制时,消息的剔除策略。

OldestMessageEvictionStrategy:剔除旧消息
OldestMessageWithLowestPriorityEvictionStrategy:剔除旧消息中权重低的消息
UniquePropertyMessageEvictionStrategy:剔除带有指定property的消息 

或者:

<policyEntry topic=">">
	<messageEvictionStrategy>
		<oldestMessageWithLowestPriorityEvictionStrategy/>
	</messageEvictionStrategy>
</policyEntry>

或者:

<policyEntry topic=">">
	<messageEvictionStrategy>
		<uniquePropertyMessageEvictionStrategy propertyName="test"/>
	</messageEvictionStrategy>
</policyEntry>

原文地址:http://www.manongjc.com/article/62599.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值