一、MQ 可能出现的问题 1. 消息丢失 - 原因:网络故障、MQ 服务器故障、生产者未正确确认消息发送、消费者未正确确认消息接收等。 - 影响:导致关键业务数据丢失,影响系统的正常运行。 2. 消息重复 - 原因:网络波动导致消息重传、MQ 服务器故障恢复后重复投递等。 - 影响:可能导致业务处理重复,如重复下单、重复扣款等。 3. 消息积压 - 原因:生产者生产消息速度过快,消费者消费消息速度过慢;消费者故障导致无法消费消息等。 - 影响:占用大量存储资源,可能导致系统性能下降,甚至崩溃。 4. 队列堵塞 - 原因:大量消息同时涌入队列,超出队列处理能力;消费者处理消息过慢等。 - 影响:新的消息无法进入队列,影响业务的正常进行。 5. MQ 服务器故障 - 原因:硬件故障、软件故障、网络故障等。 - 影响:导致消息无法发送和接收,系统中断。 二、MQ 问题排查方法 1. 消息丢失排查 - 检查生产者代码,确认是否正确设置了消息确认机制。 - 查看 MQ 服务器的日志,看是否有消息发送失败的记录。 - 检查消费者代码,确认是否正确设置了消息确认机制,以及是否在处理消息过程中出现异常导致消息未被确认。 2. 消息重复排查 - 在消费者端增加去重机制,如使用数据库或缓存记录已处理的消息标识。 - 查看 MQ 服务器的日志,看是否有重复投递的记录。 3. 消息积压排查 - 查看 MQ 服务器的监控指标,如队列长度、消息入队和出队速度等,确定积压程度。 - 检查生产者代码,看是否存在生产消息速度过快的问题。 - 检查消费者代码,看是否存在消费消息速度过慢的问题,如是否有性能瓶颈、是否存在死锁等。 4. 队列堵塞排查 - 查看 MQ 服务器的监控指标,如队列长度、队列使用率等,确定堵塞程度。 - 检查消费者代码,看是否存在处理消息过慢的问题。 - 考虑增加消费者数量或优化消费者处理逻辑,提高消费速度。 5. MQ 服务器故障排查 - 查看 MQ 服务器的日志,确定故障原因。 - 检查硬件设备,如硬盘、内存、网络等,看是否有故障。 - 尝试重启 MQ 服务器,看是否能够恢复正常。如果无法恢复,考虑使用备份服务器或进行数据恢复。

相关推荐

#软件开发笔面经#提前批没有笔试就是好,不然估计早就挂了哈哈哈一面的面试官挺帅的,我是颜狗1.自我介绍2.介绍一下最近你做的一个项目:说说功能模块是什么的3.根据我的项目问项目优化(实现几百台机子同时去分析录制)4.场景题:B站舞蹈专区测试用例设计5.你前面有提到作品的封面是不是和作者传的一不一致的问题 那还有别的可能出现错误的原因吗6.数据库有几种操作:增删改查7.联想作者增删改查作品,对应会有哪些测试点8.消息队列有了解吗9.为什么要有消息队列这种通信形式呢?相比于传统直连这些,它的目的和优劣10.已经有数据库了,为啥还要用redis11.b站个人中心从redis中获取数据,展示在页面上,相关的测试点。12.自动化有做过UI或者接口吗13.selenium :xpath 和class 这两个的区别14.什么情况用xpath,什么情况用class15.登陆场景:定位到元素,录入字符串,点击提交按钮(assert)16.有用过postman吗?做一个接口测试,你要怎么构建呢17.get和post的区别 18.常见的http状态码19.linux命令:切换到这个日志路径中管理员命令,将log文件处于编辑状态实时查看这个日志关键字"error"上下10行日志20.数据库:有一张 抽卡记录表,抽卡方式 可以通过钻石、特殊票、通票 3种方式抽取   1.请sql查询 通过 票 的形式抽到的且根据创建时间 升序的 前5条数据0;   2.将你刚查出来的这些数据,抽出来的角色名称 修改为 派蒙   3.删除角色名称 不等于 派蒙的 数据21.代码:2个长度相等的list,合并成字典22.反问
查看25道真题和解析 软件开发笔面经
点赞 评论 收藏
分享
牛客网
牛客企业服务