Java Hazelcast-复制映射的加载程序
对于map,我们可以配置加载程序从数据源(数据库)加载数据。 加载程序配置为:Java Hazelcast-复制映射的加载程序,java,hazelcast,Java,Hazelcast,对于map,我们可以配置加载程序从数据源(数据库)加载数据。 加载程序配置为: <map name="map-*"> <map-store enabled="true" initial-mode="LAZY"> <class-name>com.xyz.loader.CustomMapLoader<class-name> </map-store> </map> com.
<map name="map-*">
<map-store enabled="true" initial-mode="LAZY">
<class-name>com.xyz.loader.CustomMapLoader<class-name>
</map-store>
</map>
com.xyz.loader.CustomMapLoader
如何为复制的映射加载相同的映射?或者我们可以将映射转换为复制映射吗?复制映射不支持
MapStore
/MapLoader
,您无法转换,因为IMap
实现了ConcurrentMap
,其中asReplicatedMap
实现了map
最好的方法是在Hazelcast节点的初始启动期间加载
ReplicatedMap
,也可以作为IMap
的入口处理器的一部分进行延迟加载
Hazelcast文档有多个警告,提醒您小心使用此映射,因为它不是线程安全的,读取过时数据的可能性更大。顺便说一句,此功能的用例是什么?我们需要在地图上运行分布式任务,其中任务需要查找一些小表,以便用于数据位置的复制地图。确定。有道理。您还可以从客户端作为executorservice触发一个任务,以最初加载该数据。