【发布时间】:2016-12-15 17:15:27
【问题描述】:
目前,我有一个由 MapStore 支持的 IMap。此 IMap 在启动时加载并具有数百万个条目。当地图完全加载时,客户端使用 Imap.values() 和谓词检索条目。这种加载在启动时对我来说很好。
现在,我必须定期重新加载所有数据(例如,每 2 小时)。我正在使用 IMap.loadAll(true) 强制重新加载。 MapStore (loadAllKeys() + loadAll(keys)) 大约需要 4 分钟才能完成完整的加载。似乎在这 4 分钟内,所有通过谓词向 imap 发送查询的客户端都被阻塞,直到重新加载完成。
在我的情况下,我不能阻塞集群 4 分钟(事实上一秒钟都没有)。
- 真的是 Imap.loadAll 阻塞了谓词查询吗?
- 可以将 imap 配置为非阻塞或存在 IMap.loadAll() 的非阻塞替代方案。
我正在尝试使用 HC 3.7.2,有 2 个节点和 java 8。
【问题讨论】:
标签: java hazelcast hazelcast-imap