云消息队列 RocketMQ 版支持优雅下线的能力,能够有效避免因客户端连接突发中断引发的消息丢失等问题,从而确保业务的持续可用性。
能力概述
优雅下线是云消息队列 RocketMQ 版为提升服务端运维场景下的可靠性而推出的核心特性。该能力通过多种保障机制,在服务器版本发布、重启或维护期间,避免因客户端连接突然中断导致的生产或消费端报错、消息丢失等问题,确保业务连续性。
保障机制
服务端节点禁写机制
在存储节点重启前,服务端会临时禁止该节点写入操作,等节点无新消息写入时再进行重启,保障客户端已发出的消息不会存储失败。
连接关闭机制
云消息队列 RocketMQ 版服务端基于HTTP/2协议中定义的GOAWAY帧,实现优雅地关闭连接或通知客户端即将关闭连接。该机制帮助服务端和客户端协调连接的终止过程,避免未完成的请求被突然中断,确保系统稳定性。
能力效果
生产者:生产者提交的发送消息请求均能成功处理,不会出现发送失败的情况。
消费者:
大部分消息都会消费成功。
只有极少数情况下的消息(正在重启的存储节点上堆积的消息)会因消费时提交位点失败而进行重投。
客户端版本要求
为保障优雅下线的正常使用,客户端SDK需满足以下版本要求:
语言类型 | 最低支持版本 | 详细说明 |
Java gRPC协议 | 5.0.7 | |
Java Remoting协议 | 5.3.1 | |
Go | 5.1.0-rc.1 | |
Python | 5.0.4 | |
C++ | 5.0.2 | |
C# | 5.1.0 |
该文章对您有帮助吗?