apache / apache/rocketmq-client-cpp
Support the dynamic closing of track message sending on the client.
- 主要語言
- C++
- 星號
- 393
- 分支
- 167
- PR 合併指標
- 30 天內沒有已合併 PR
描述
可靠性和可用性是每个 MQ 系统最重要的两个特性,通过Message Track Trace我们应该查看完整的消息链接,快速找到进程消息传递失败的根本原因,并且可以查询到很多参数值,例如发送成本时间、消费成本时间、存储在 broker 中的时间等等,当服务端压力过大或者存储紧张的时候,我们可以通过命令临时关闭轨迹消息进行降级。Apache RocketMQ在RIP-6中已经实现了消息轨迹的功能,针对CPP客户端,基本的轨迹功能已经实现,需要进一步实现临时降级策略。本题目的目的就是要在CPP客户端实现轨迹降级策略,主要包括:
1.学习Apache RocketMQ知识,详细了解RocketMQ原理、使用方式
2.掌握Apache RocketMQ中轨迹消息特性原理和代码
3.在社区中提交Issue,完成相关代码,review后被社区合并
相关材料:
https://github.com/apache/rocketmq-client-cpp
https://github.com/apache/rocketmq/wiki/RIP-6-Message-Trace
https://github.com/apache/rocketmq/blob/develop/docs/cn/msg_trace/user_guide.md
https://rocketmq.apache.org/
貢獻指南
研究方向
先閱讀 RIP-6 Message Trace specification 和連結的 message-trace user guide,然後檢查 C++ client 中現有的 message-trace 實作。定義在壓力下暫時停用 trace messages 傳送的執行期行為,並確定在提交實作進行審查之前應如何驗證該行為。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- cpp
- 領域
- distributed-systems
- Issue 類型
- 功能
- 難度
- 5/5
- 預估耗時
- 一週以上
- 活躍度
- 停滯
- 描述清晰度
- 需要釐清
- 新手友好度
- 25/100