【下线公告】华为分布式消息服务RabbitMQ版延迟消息插件下线公告
华为云计划于2024/01/15 00:00(北京时间)下线分布式消息服务RabbitMQ版的延迟消息插件,即rabbitmq_delayed_message_exchange。
下线范围
下线区域:所有区域
下线原因
开启延迟消息插件的实例,延迟消息堆积后存在以下风险:
- 延迟消息存储在Mnesia内存数据库中,堆积过多(数十万甚至数百万条)可能触发内存高水位阻塞生产消息,具体请参见Limitations。
- 延迟消息堆积数量越多,RabbitMQ节点启动加载耗时越久,可能导致节点重启后无法快速恢复业务。
- 延迟消息在RabbitMQ中为单副本存储,如果该节点发生重启,该节点上的延迟消息无法被消费端消费。
消减措施
已开启延迟消息插件的实例,建议分别为每个节点配置内存使用率告警,内存使用率达到40%将触发内存高水位,告警阈值建议设置为30%。如果触发告警,建议扩容代理规格,避免触发内存高水位。如果已经由于延迟消息导致高水位,建议加快消费,减少延迟消息堆积。
替代方案
- 未开启延迟消息插件的RabbitMQ实例,如果需要使用延迟消息功能,建议使用RabbitMQ AMQP-0-9-1版本的定时消息或分布式消息服务RocketMQ版的定时/延迟消息代替。
- 已开启延迟消息插件的RabbitMQ实例,建议尽快将使用延迟消息的业务改造迁移至RabbitMQ AMQP-0-9-1版本或RocketMQ实例,并关闭原RabbitMQ实例延迟插件,否则可能存在内存高水位阻塞生产消息、节点重启后无法快速恢复业务、以及节点重启后延迟消息无法被消费端消费的风险。迁移时建议先切消费,再切生产,对业务无影响。
下线影响
- 未开启延迟消息插件的实例,插件列表中将不再显示此插件。
- 已开启延迟消息插件的实例,仍然可以使用。如果您在控制台关闭此插件后,也将不再显示。
如您有任何问题,可随时通过工单或者服务热线(4000-955-988或950808)与我们联系。