我想了解zookeeper在ActiveMQ代理的复制leveldb中的作用.
关于zookeeper选举:zookeeper如何知道连接到zookeeper的所有客户端,哪些客户端是ActiveMQ经纪人争取成为主人.是否有任何特定的密钥或配置由连接到zookeeper的所有经纪人传递,表示我们(假设3)ActiveMQ经纪人属于同一环境并且争取成为主人.
奴隶经纪人在什么时间间隔从主经纪人复制数据?任何可能丢失数据的极端情况?
ActiveMQ是否使用复制的leveldb保证消息排序?我说的是当生产者按顺序向经纪人发送消息时重新选举主人的情况?
谢谢,
Anuj
通过Zookeeper配置中的zkPath和代理名称.
在事务完成之前,每条消息都会同步到仲裁(节点/ 2 + 1)代理.因此没有同步间隔,它实时同步.除非您有法定数量的在线经纪人,否则群集将无法运行,因此不会丢失数据.
消息以同步方式同步到大多数节点.在重新选举时,将选出具有最新更新的节点.有序消息应该没问题.但是,在消息队列中严格依赖有序消息通常是有问题的.根据经验,消息顺序只能在"快乐的日子"下完成.死信,多个消费者等也可能搞乱消息顺序.