对于如何保持消息的时序一致性的关键点在于需要找到一个时序基准来标识每一条消息的顺序。 这个时序基准可以通过全局的序号生成器来确定,常见的实现方式包括支持单调自增序号的资源生成,或者分布式时间相关的 ID 生成服务生成,两种方式各有一些限制,不过,你都可以根据业务自身的特征来进行选择。

大部分场景中,业务层ACK确认机制 + 消息重传机制 + 消息完整性检查,能解决消息丢失的问题。 业务层的ACK确认机制和重传机制 ACK是确认字符(Acknowledge character)的意思,TCP协议默认提供了ACK机制,如果接收方成功接收到数据,就会回复一个ACK数据,表示发送方发出的数据已确认接收无误,在“三次握手”、“四次挥手”中经常见到。

  • page 1 of 1
Author's picture

Mr柿子

Hi~ ,我是@Mr柿子,一名PHPer,爱好折腾各种新技术,热爱PHP


Gopher/PHPer


China Beijing