手记

RocketMQ线上事故分析记录

背景介绍

  1. RocketMQ版本

公司最近引入了阿里云的RocketMQ 企业铂金版本,由阿里云平台完全托管,能够在微服务、分布式系统和无服务应用程序之间,提供基于消息的可靠异步通信机制,轻松构建松耦合、可扩展、高可用分布式系统。

  1. 计费价格

整体来说价格公道,最主要用起来省事不少

问题由来

  1. 由于系统并发使用量较大,在每次的重启过程中都有消息莫名丢失
  2. 经排查很快发现了原因是由于封装的RocketMQ组件未设置安全的启动与关闭

解决方案

1.增加安全启动与关闭接口

2.在应用或者bean初始化后延迟启动RocektMQ,避免程序初未初始化完成导致消息没有被成功消费

3.同样的在程序关闭或者重启也需要安全关闭RocketMQ

4.加上事件监听应用停止和关闭双重保障

总结

引入一个中间件或组件时,需要完整了解其启动、关闭、运行机制,避免出现非运行时问题导致事故

作者:消灭知识盲区
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

0人推荐
随时随地看视频
慕课网APP

相关阅读

消息中间件入门