优雅下线

云消息队列 RocketMQ 版支持优雅下线的能力,能够有效避免因客户端连接突发中断引发的消息丢失等问题,从而确保业务的持续可用性。

能力概述

优雅下线是云消息队列 RocketMQ 版为提升服务端运维场景下的可靠性而推出的核心特性。该能力通过多种保障机制,在服务器版本发布、重启或维护期间,避免因客户端连接突然中断导致的生产或消费端报错、消息丢失等问题,确保业务连续性。

保障机制

服务端节点禁写机制

在存储节点重启前,服务端会临时禁止该节点写入操作,等节点无新消息写入时再进行重启,保障客户端已发出的消息不会存储失败。

连接关闭机制

云消息队列 RocketMQ 版服务端基于HTTP/2协议中定义的GOAWAY帧,实现优雅地关闭连接或通知客户端即将关闭连接。该机制帮助服务端和客户端协调连接的终止过程,避免未完成的请求被突然中断,确保系统稳定性。

能力效果

  • 生产者:生产者提交的发送消息请求均能成功处理,不会出现发送失败的情况。

  • 消费者

    • 大部分消息都会消费成功。

    • 只有极少数情况下的消息(正在重启的存储节点上堆积的消息)会因消费时提交位点失败而进行重投。

客户端版本要求

为保障优雅下线的正常使用,客户端SDK需满足以下版本要求:

语言类型

最低支持版本

详细说明

Java gRPC协议

5.0.7

Java SDK

Java Remoting协议

5.3.1

Java SDK

Go

5.1.0-rc.1

Go SDK

Python

5.0.4

Python SDK

C++

5.0.2

C++ SDK

C#

5.1.0

C# SDK