栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

mq如何保证消息的幂等性

mq如何保证消息的幂等性

mq如何保证消息的幂等性

文章目录
  • mq如何保证消息的幂等性
  • 前言
  • 一、出现非幂等性的情况
  • 二、解决办法
    • 1.mq接收生产者传来的消息:
    • 2. 消费者消费mq中的消息:


前言

一、出现非幂等性的情况
1、生产者已把消息发送到mq,在mq给生产者返回ack的时候网络中断,故生产者未收到确
定信息,生产者认为消息未发送成功,但实际情况是,mq已成功接收到了消息,在网络重
连后,生产者会重新发送刚才的消息,造成mq接收了重复的消息

2、消费者在消费mq中的消息时,mq已把消息发送给消费者,消费者在给mq返回ack时网
络中断,故mq未收到确认信息,该条消息会重新发给其他的消费者,或者在网络重连后再
次发送给该消费者,但实际上该消费者已成功消费了该条消息,造成消费者消费了重复的消
息;
二、解决办法 1.mq接收生产者传来的消息:
mq内部会为每条消息生成一个全局唯一、与业务无关的消息id,当mq接收到消息时,
会先根据该id判断消息是否重复发送,mq再决定是否接收该消息。
2. 消费者消费mq中的消息:
也可利用mq的该id来判断,或者可按自己的规则生成一个全局唯一id,
每次消费消息时用该id先判断该消息是否已消费过
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/584114.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号