消息中间件必须提供ack()机制

ack()机制 = 当消费者消费完消息、并回送ack()后,消息中间件才能认为此消息已被成功消费。

无ack机制 = 消费端拿到消息后,中间件就认为消费端已成功处理

在“ACK机制”下,如果消费端在拿消息A后出异常或者当机,当它从异常或当机中恢复时,又于出错前没有回送ACK,消息中间件就会重发消息,消费端就有了一次补偿处理的机会。

在“无ACK机制”下,就没有补偿处理的机会,也就会造成数据的不一致。

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.