采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
在 7-6 章节中,视频中说消息在从 Broker 到消费者之间的时候,做消息入库,利用主键排除重复消息。
现在有一个问题,按照上图,消息是先入库,在到消费端,如果消费端消费失败,进行重试。
1. 后面重试的消息在 ID 规则路由组件哪里就会发现消息 ID 已经存在,会被排除掉,不会进入到消费端重试,重试就无效了。我猜测是不是消息入库的时候不光比较消息 ID 是否存在,还应该有一个消息状态,根据状态来确定是否让消费端来消费这个消息。
2. 这个 ID 规则路由组件是不是可以用 AOP 实现。
消费端消费失败,重试策略是自己定义的
比如消费失败,我要重新消费,那就再创建一条消息进行重试,主要ID生产的规则不一样就行了,rabbit都是单次投递的,就算重试,消息ID不一样就可以,但是业务ID是同一个
登录后可查看更多问答,登录/注册
从0到1,全面深入掌握RabbitMQ消息中间件技术
1.4k 14
3.2k 13
1.8k 11
1.1k 9
1.4k 9