当前位置: 首页 > 知识库问答 >
问题:

Hazelcast集群成员可以存在于两个单独的组中吗?

罗飞宇
2023-03-14

假设我有4台服务器(1,2,3,4)在嵌入式模式下运行,并启用了近缓存。每个服务器都运行一个hazelcast成员jvm和一个hazelcast客户机jvm。每个服务器上的成员jvm定义一个a的组名,集群成员定义为1、2、3、4。每个服务器上的客户机jvm定义相同的A组名,并将相同的集群成员定义为1、2、3、4。配置如下所示:

server 1 - member group A - client group A - cluster members 1,2,3,4
server 2 - member group A - client group A - cluster members 1,2,3,4
server 3 - member group A - client group A - cluster members 1,2,3,4
server 4 - member group A - client group A - cluster members 1,2,3,4

现在,假设我停止服务器1上的成员jvm,将成员配置中的组名更改为B并再次启动成员jvm。第一个问题,客户机jvm是否会忽略这个成员,并且仍然联系仍在其组中的成员jvm?配置现在看起来如下所示:

server 1 - member group B - client group A - cluster members 1,2,3,4
server 2 - member group A - client group A - cluster members 1,2,3,4
server 3 - member group A - client group A - cluster members 1,2,3,4
server 4 - member group A - client group A - cluster members 1,2,3,4

然后,假设我停止服务器1上的客户机jvm,将客户机配置中的组名更改为B并再次启动客户机jvm。第二个问题,客户机jvm现在是否只与组B中的成员对话?现在存在以下配置时会发生什么?

server 1 - member group B - client group B - cluster members 1,2,3,4
server 2 - member group A - client group A - cluster members 1,2,3,4
server 3 - member group A - client group A - cluster members 1,2,3,4
server 4 - member group A - client group A - cluster members 1,2,3,4

我最大的问题是现在集群成员1、2、3、4位于两个不同的组中会发生什么?

共有1个答案

岑俊明
2023-03-14

您可以在相关的文档中阅读关于Hazelcast集群分组的信息。

通常,组名使得创建单独的Hazelcast集群成为可能,即使它们驻留在相同的发现空间中。注意,您定义了如何发现Hazelcast成员(例如,组播(默认情况下),或者您可以指定静态IP配置,或者使用发现策略之一)。现在,即使可以发现成员,如果组名不同,您也不能加入他们。

因此,为了准确地回答您的问题,您的客户将只加入以下成员:

    null
 类似资料:
  • 我正在进行一个Spring启动项目,我使用Hazelcast作为缓存。我启用了tcp作为连接方法,我还提到了一些成员。会员可以加入。但问题是其他节点也可以加入除了成员。有人能告诉我如何限制它吗? 这是我的配置,

  • 我使用的是Hazelcast 3.12。5我想知道我们是否可以在偶数个节点上运行hazelcast群集,或者需要/首选奇数个节点。如果我运行奇数个节点,是否会出现大脑分裂问题或类似情况/大脑分裂的可能性增加。 这可能是最基本的,但我想确定——我想从社区了解一些真实世界的经验。我不希望在四个节点足以完成任务的情况下,从三个节点增加到五个节点会产生成本,但同时,如果我们使用大小均匀的集群会有任何缺点,

  • 我有一个配置类,它存储在hz IMap 这个配置类是1-st实例成员 P. S成员是两个不同的应用程序的一部分。 此配置作为对象从第一个集群成员推送到IMap 我的目标是在另一个模块中看到这个配置 如何在第二个成员实例中序列化该对象 如果调用 我得到了

  • 我们有一个在3.5版本上利用Hazelcast IExecutor服务和IMap的系统。我们最近遇到了Hazelcast集群成员在生产中内存不足的情况,一个接一个,最后所有节点都被OOM崩溃。 在进行原因分析时,我们发现下面有数千个日志条目,日志文件大小呈指数级增长。存放原木的存储空间也已经用完。 我知道,集群成员会不断发出心跳,以确保所有成员都活着,我相信默认值是10sec。现在的问题是,如果任

  • 两个节点中的配置均为: 节点中的容器运行时使用: 节点中的容器使用以下方式运行: VM在GCP上是新鲜的,并且在同一个网络上,我使用了以下镜像:

  • 我正在做hazelcast监控服务,我需要为每个集群成员添加客户名称,以了解哪个模块不在集群中。 我想要成员的常量名称,而不是 这能做到吗?