确保所有分区都加载到 Hazelcast 集群中
Making sure all partitions are loaded in Hazelcast cluster
分布式地图的官方文档说'EAGER means load is blocked till all partitions are loaded.'这是否意味着在加载该地图的所有分区之前,对分布式地图的任何操作都会被阻止?
我的项目有几个相当大的存储空间,从数据库初始加载大约需要 20 分钟。在所有分区完全加载之前,几乎没有必要将所有计划任务启动到 运行。当所有分区都启动并准备就绪时,是否有任何通知?
是的,就是这个意思。如果分区尚未加载,则不会执行任何操作。这些操作将被暂停并重试。
每个分区的加载是相互独立的,因此如果完成了 partitionId == 1 的加载,并且您执行 map.get(key),对于由 partitionId == 1 处理的键,此操作将成功,即使尽管 partitionId == 2 仍在加载值。如果你想阻塞直到所有分区都加载到主叫方,你可以调用 map.size() 它需要加载所有分区,所以它不会完成直到所有东西都被加载。
分布式地图的官方文档说'EAGER means load is blocked till all partitions are loaded.'这是否意味着在加载该地图的所有分区之前,对分布式地图的任何操作都会被阻止?
我的项目有几个相当大的存储空间,从数据库初始加载大约需要 20 分钟。在所有分区完全加载之前,几乎没有必要将所有计划任务启动到 运行。当所有分区都启动并准备就绪时,是否有任何通知?
是的,就是这个意思。如果分区尚未加载,则不会执行任何操作。这些操作将被暂停并重试。 每个分区的加载是相互独立的,因此如果完成了 partitionId == 1 的加载,并且您执行 map.get(key),对于由 partitionId == 1 处理的键,此操作将成功,即使尽管 partitionId == 2 仍在加载值。如果你想阻塞直到所有分区都加载到主叫方,你可以调用 map.size() 它需要加载所有分区,所以它不会完成直到所有东西都被加载。