Hazelcast getMap()+;同步映射的后续更改

Hazelcast getMap()+;同步映射的后续更改,hazelcast,hazelcast-jet,Hazelcast,Hazelcast Jet,我有一个IMap,启用了日志 使用客户端(Hazelcast或Jet),我希望获得完整的地图,并获得所有后续更新以丰富地图 我怎样才能做到这一点 如果执行.getMap(),然后调用getJournalMap()或.addEntryListener(),我担心在getMap()和addEntryListener()调用之间可能会丢失更新 是否有更直观的方式获得完整的地图+更新? 感谢目前,事件日志没有公开用于阅读Hazelcast IMDG中事件日志的公共API。事件日志可用于向Hazelcas

我有一个IMap,启用了日志

使用客户端(Hazelcast或Jet),我希望获得完整的地图,并获得所有后续更新以丰富地图

我怎样才能做到这一点

如果执行.getMap(),然后调用getJournalMap()或.addEntryListener(),我担心在getMap()和addEntryListener()调用之间可能会丢失更新

是否有更直观的方式获得完整的地图+更新?
感谢

目前,事件日志没有公开用于阅读Hazelcast IMDG中事件日志的公共API。事件日志可用于向Hazelcast Jet传输事件数据,因此应与Hazelcast Jet一起使用。您可以在这里看到一些示例:

您正在寻找的是Hazelcast的
继续查询缓存
功能。请看

下面是来自客户端的示例用法

    HazelcastInstance instance = Hazelcast.newHazelcastInstance();

    QueryCacheConfig queryCacheConfig = new QueryCacheConfig("cache");
    PredicateConfig predicateConfig = new PredicateConfig().setImplementation((Predicate) entry -> true);
    queryCacheConfig.setPredicateConfig(predicateConfig);

    ClientConfig clientConfig = new ClientConfig();
    clientConfig.addQueryCacheConfig("map", queryCacheConfig);

    HazelcastInstance client = HazelcastClient.newHazelcastClient(clientConfig);

    IMap<Object, Object> map = client.getMap("map");
    QueryCache<Object, Object> cache = map.getQueryCache("cache");
HazelcastInstance=Hazelcast.newHazelcastInstance();
QueryCacheConfig QueryCacheConfig=新的QueryCacheConfig(“缓存”);
PredicateConfig PredicateConfig=新建PredicateConfig().setImplementation((谓词)项->真);
queryCacheConfig.setPredicateConfig(predicateConfig);
ClientConfig ClientConfig=new ClientConfig();
addQueryCacheConfig(“映射”,queryCacheConfig);
HazelcastInstance客户端=HazelcastClient.newHazelcastClient(clientConfig);
IMap map=client.getMap(“map”);
QueryCache=map.getQueryCache(“缓存”);

你所说的
getJournalMap()
是什么意思?是Jet的
源代码。mapJournal(…)
?我可以使用Jet获取日志,但这只能给我日志中的内容,要么从最早的开始,要么从最新的开始。如何获取整个IMap,并从最后一次写入IMap时开始处理日志?谢谢链接。我是否可以对CQC运行.setPopulate(true),应用EventListener,获得整个映射,然后所有后续事件都将由侦听器处理?也许我会在我试图实现的内容中加入一些上下文。。。我想为我的IMap构建一个websocket接口。在客户端连接时,服务器将响应映射的完整快照,然后响应所有后续事件。然后,web客户端可以在IMDG中查看确切的IMap,但要将事件应用到第一个快照中,只需在创建客户端之前使用查询缓存配置映射即可
QueryCache
将具有初始快照和对实际地图的后续更新谢谢!我会试试的。