我有5个Hazelcast缓存实例,在同一个JVM中具有不同的实例和缓存名称。在应用程序启动时,所有这些都形成了一个我想避免的集群,因为每个集合都有不同的数据集。以下是使用不同名称创建每个实例的代码。
Config cfg = new Config();
Properties props = getHazelcastProps();
cfg.setProperties(props);
cfg.setInstanceName(getCacheInstanceName());
HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);
以下是hazelcast日志
Aug 30, 2017 9:49:52 AM com.hazelcast.cluster.ClusterService
INFO: [MY-IP-ADDRESS]:5705 [dev] [3.2]
Members [5] {
Member [MY-IP-ADDRESS]:5701
Member [MY-IP-ADDRESS]:5702
Member [MY-IP-ADDRESS]:5703
Member [MY-IP-ADDRESS]:5704
Member [MY-IP-ADDRESS]:5705 this
}
在这种情况下如何避免群集?
答案 0 :(得分:1)
我认为每个缓存都有一个HazelcastInstance是有意义的,因为Hazelcast有很多开销(至少在节点上),但是,你可以通过给它们来确保它们不会加入不同的组名。