用于数据备份的Hazelcast映射配置

时间:2018-04-22 19:00:50

标签: java hazelcast distributed-caching distributed-cache

1.尝试使用Hazelcast创建集群。 在数据备份的情况下:

<hazelcast>
  <map name="**default**">
    <backup-count>1</backup-count>
  </map>
</hazelcast>

从上面的代码片段中,我只是想澄清一下&#34;默认&#34;地图名称代表什么?这是否意味着所有地图都有备份计数1,或地图名称&#34;默认&#34;备份计数为1。

HazelCast Reference Link

  1. 有没有办法可以遍历群集中的所有地图?

1 个答案:

答案 0 :(得分:1)

  1. 名称“default”(不是“**default**”)表示任何地图。
  2. 如果您对此有疑问,请创建一个包含两个节点的集群,将一些数据放入Hazelcast映射并终止一个节点。如果该地图的备份计数为1,则您不会丢失该地图的数据。

    1. 尝试

      Set<String> iMapNames = this.hazelcastInstance.getDistributedObjects().stream()
              .filter(distributedObject -> distributedObject instanceof IMap)
              .map(distributedObject -> distributedObject.getName()).collect(Collectors.toCollection(TreeSet::new));
      
      iMapNames.stream().forEach(name -> {
          IMap<?, ?> iMap = this.hazelcastInstance.getMap(name);
          System.out.printf("IMap: '%s'%n", iMap.getName());
      }