问题描述
不能删除发布的每个数据项。因此,每个数据项都很重要。
分发了3个发布者和60个订阅者。
第一位发布者向20个订阅者提供数据类型为
的数据项type struct{
name string
age integer
gender boolean
}
第二个发布者将数据项提供给另外20个订阅者,其数据类型为:
type struct{
ledStatus boolean
socketStatus boolean
}
第三发布者将数据项提供给另外20个订阅者,其数据类型为:
type struct{
range integer
boundary integer
}
任何发布者向多个订阅者发送数据的通信机制是什么?订阅者希望收到有关新商品的通知,以避免轮询流量。...
解决方法
您正在寻找的是分布式事务日志。一个驻留在单个序列化流中的消息,每个消息都由一个大的递增标识符(例如128位整数)索引。
使用者脱机时,可以通过提供最后处理的消息的ID,将自己注册为请求处理消息后的所有消息的注册过程的一部分。
生产者将其消息发送到日志。他们负责检查并确保他们的消息已被接受到日志中,如果消息被拒绝(这种情况极少发生,但有可能),它会再次尝试。
分布式事务日志本身可以由中央数据库提供(数据库本质上是加速的事务日志),也可以按照RAFT.之类的算法/协议来实现自己的事务。