Hazelcast 忽略集群配置

Hazelcast ignored cluster configuration

我已经定义了 "static" hazelcast 配置:

@Bean
    public Config getHazelcastConfig() {
        final Config config = new Config();
        config.setProperty("hazelcast.logging.type", "slf4j");
        final GroupConfig groupConfig = new GroupConfig();
        groupConfig.setName("projectName");
        groupConfig.setPassword("projectPassword");
        config.setGroupConfig(groupConfig);
        final NetworkConfig networkConfig = new NetworkConfig();
        final TcpIpConfig tcpIpConfig = new TcpIpConfig();
        final String[] members = "10.0.0.2".split(",");
        for (String member : members) {
            tcpIpConfig.addMember(member);
        }
        tcpIpConfig.setConnectionTimeoutSeconds(5);
        final JoinConfig joinConfig = networkConfig.getJoin();
        joinConfig.getAwsConfig().setEnabled(false);
        joinConfig.getMulticastConfig().setEnabled(false);
        joinConfig.setTcpIpConfig(tcpIpConfig);
        joinConfig.getTcpIpConfig().setEnabled(true);
        joinConfig.getTcpIpConfig().setConnectionTimeoutSeconds(5);
        config.setNetworkConfig(networkConfig);
        config.setInstanceName("projectInstanceName");
        return config;
    }

其中“10.0.0.2”是我的本地主机 ip。我只想将一个 hazelcast 实例添加到我的 tcpIpConfig 成员中。我的朋友坐在同一个网络中,IP 为“10.0.0.3”。他懒得更改 git 上共享的 属性 文件的密码和组名,并且正在连接到我的集群。为什么他能够连接到我的集群?我该如何预防?

是的,@Sachin。你是对的。添加后

securityCfg.setEnabled(true);

检查 hazelcast 配置密码和登录名。

我在本地主机上使用多个 hazelcast 实例时遇到的第二个问题与休眠有关。在休眠中使用 hazelcast 作为二级缓存时,会创建 hazelcast 成员。它可以 on/off 通过:

properties.setProperty("hibernate.cache.hazelcast.use_native_client", "false");

properties.setProperty("hibernate.cache.hazelcast.use_native_client", "true");