首页 > 解决方案 > 如果 ActiveMQ 中“Replicated levelDB Store”中的客户端无法访问 MASTER 节点,会发生什么情况?

问题描述

所以“ Replicated LevelDB Store ”的文档说:

选出的主代理节点启动并接受客户端连接。其他节点进入从模式并连接主节点并同步它们的持久状态/w。从节点不接受客户端连接。所有持久性操作都复制到连接的从站。如果 master 死了,最新更新的 slave 将被提升为 master。然后可以使故障节点重新联机并进入从属模式。

所以存在一个选择的主节点,它接受客户端连接,其余的是复制的从节点,不接受客户端连接。美好的。

因此,如果主人死了,一切正常 - 主人选择,客户断开连接,并最终连接到新的主人。惊人的。

现在,如果从 Zookeeper 的角度来看 master 没有死,但客户端无法访问它,会发生什么。所以选择了一个主人,它被认为是活的(据我所知,动物园管理员需要能够连接到它才能被认为是可用的),但实际的客户端无法连接到它?

当然客户端可以连接到其他从节点,他们只是不能连接到主节点。但是主人永远不会改变,因为它是活的。它是这样工作的吗?

不确定我是否理解正确。

标签: activemq

解决方案


ActiveMQ 中的 LevelDB 支持已被弃用,并且已经存在了相当长的一段时间(几年),所以我建议不要打扰它,因为没有支持并且大量未修复的开放错误。

我建议改为查看ActiveMQ Artemis


推荐阅读