是否可以在運行時更改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