我使用hazelcast IMap来缓存数据(key,uuid)。
在课堂上
static HazelcastInstance hzInstance;
@Autowired
private static Config config;
public static HazelcastInstance hazelcastInstanceM {
if (sharedInstance == null)
sharedInstance = Hazelcast.newHazelcastInstance(config);
return sharedInstance;
}
在另一个班级B中,我获得了hazelcastinstance来获取地图CD
static {
hazelcastInstance = App.hazelcastInstanceM();
map= hazelcastInstance.getMap("CD");
}
我在群集中有两个成员。第一次请求服务说成员1 key1,uuid1gets保存在map中。对服务提出的第二个请求是成员2,如果地图中没有,则应添加key1。
kmap.putIfAbsent(key1, uuid1, 4, TimeUnit.MINUTES);
现在它观察到当第二次通过成员2 key1触发请求时,uuid2会再次添加到map中。理想情况下,不应该添加它,因此map不会在集群成员之间显示分布式行为
地图不按分布式行事的原因是什么