有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Hazelcast不会在节点启动时填充ReplicatedMap

这是一段代码,其中ClusterStorage是我们包装Hazelcast的代码

    public ClusterStorage clusterStorage() {
        Config config = new Config();
        String mapName = "cluster-storage";
        ReplicatedMapConfig mapConfig = config.getReplicatedMapConfig(mapName);
        mapConfig.setInMemoryFormat(InMemoryFormat.BINARY);

        config.getGroupConfig()
                .setName("name")
                .setPassword("pass");

        HazelcastInstance instance = Hazelcast.newHazelcastInstance(config);

        return new ClusterStorage(instance.getReplicatedMap(mapName));
    }

当我在两个节点都启动时更改映射时,会复制更改,但当我更改节点n1上的映射,然后启动第二个节点n2时,n1的状态不会被复制,并且n2节点的映射为空

我想这应该行得通吧? 可能有什么问题


共 (2) 个答案

  1. # 2 楼答案

    我设法做到了。我的调查结果:

    问题在于Maven的pom.xml中依赖关系管理的版本3.7.1和3.5.5的组合。我们不知道Spring Boot导入的依赖项管理还定义了具有不同版本的hazelcast工件,这反过来可能导致类路径上存在不兼容库