在我的开发环境中,我有两个rabbitmq服务器的集群,我想这样做,以便当原始主服务器出现故障时,队列和所有消息都将可用。
我在具有以下属性的持久交换上创建了一个持久队列:
ha-mode:全部
ha-sync-mode:自动
x-queue-master-locator:最小大师
我还向队列发布了一条持久消息。 当我关闭作为队列主服务器的主机时,状态将变为关闭。我希望ha-mode都能将队列及其消息复制到所有节点,ha-sync-mode可以使节点保持同步,并且x-queue-master-locator可以将队列移到另一个节点或在生产中到队列最少的节点。如何设置队列以实现此目的?
编辑(更多信息):
服务器信息:
rmq:3.7.17
Erlang:22.0.7
两个节点的我的配置:
vm_memory_high_watermark.relative = 0.65
vm_memory_high_watermark_paging_ratio = 0.8
disk_free_limit.relative = 2.0
channel_max = 32
num_acceptors.tcp = 20
num_acceptors.ssl = 0
handshake_timeout = 10000
frame_max = 160000
mirroring_sync_batch_size = 1024
background_gc_enabled = true
background_gc_target_interval = 300000
答案 0 :(得分:1)
当您使用它们创建队列时,这些属性没有任何意义。您需要创建一个将这些属性添加到队列的策略。