是否可以在运行时更改Hazelcast配置,如果有,可以修改哪些参数。在运行时更改hazelcast配置
它似乎有可能使用Hazelcast Management Center,但在官方docos /论坛中找不到任何示例/参考。
是否可以在运行时更改Hazelcast配置,如果有,可以修改哪些参数。在运行时更改hazelcast配置
它似乎有可能使用Hazelcast Management Center,但在官方docos /论坛中找不到任何示例/参考。
Hazelcast内部并非真正设计为可修改的。你想修改什么?
可能是有点晚了回答你的问题,但总比没有好:)晚
地图已经使用地图服务创建后,您可以修改一些地图配置属性:
HazelcastInstance instance = Hazelcast.newHazelcastInstance();
// create map
IMap<String, Integer> myMap = instance.getMap("myMap");
// create a new map config
MapConfig newMapConfig = instance.getConfig().getMapConfig("myMap").setAsyncBackupCount(1);
// submit the new map config to the map service
MapService mapService = (MapService)(((AbstractDistributedObject)instance.getDistributedObject(MapService.SERVICE_NAME, "")).getService());
mapService.getMapServiceContext().getMapContainer("myMap").setMapConfig(newMapConfig);
请注意,此API不可见/记录,因此可能无法在将来的版本中使用。
当我们需要在启动时在分布式映射中插入数百万条目时,我们正在使用它。禁用备份可将插入时间缩短30%。数据插入后,我们启用备份。
不幸的是,它不会影响次要版本(例如3.4.x)中的近似缓存和不同行为的配置。官方回复表格hazelcast的人认为,动态配置更改不受支持,他们不会投入时间来添加此功能(sadpanda)。 –
最大缓存大小 –
是的,我还发现它很有用,能够在运行时修改最大缓存大小。 – Jack
你可以为它做一个github的问题,所以我们可以跟踪它。 如果您检查com.hazelcast.management包中的代码,尤其是UpdateMapConfigOperation,那么您将看到如何完成该操作。 我认为通过JMX公开这将是一件好事。 – pveentjer