生产阶段

通过请求确认机制来保证消息的可靠传递

存储阶段

消费阶段

Consumer 保证消息成功消费的关键在于确认的时机,不要在收到消息后就立即发送消费确认,而是**应该在执行完所有消费业务逻辑之后,再发送消费确认。**因为消息队列维护了消费的位置,逻辑执行失败了,没有确认,再去队列拉取消息,就还是之前的一条。