我们正在测试Apache Ignite Continuous Queries,在测试期间,我们注意到一些连续查询错过了缓存的某些更新。 我们的用例如下:
因此,其中一些连续查询偶尔会错过很少的缓存更新。我们想知道连续查询是否错过了缓存的某些更新这一事实是"正常"。
我们还使用500,250,100个缓存执行了测试,结果相同。
此外,我们还想知道可以创建多少缓存和连续查询? Apache Ignite是否支持数十万次缓存和连续查询的创建?
提前感谢您的答案!
答案 0 :(得分:1)
在连续查询中永远不会丢失通知。如果实际发生这种情况,则很可能是产品或测试中的错误。我建议与Apache Ignite社区分享您的测试。
答案 1 :(得分:1)
使用Ignite邮件列表(http://apache-ignite-users.70518.x6.nabble.com/Can-a-Continuous-Queries-miss-some-updates-order-td11620.html#a11623)得到答案:
持续查询(CQ)保证每个条目将保留事件的顺序。例如:
cache.put(key1, 100);
cache.put(key2, 100);
cache.put(key1, 200);
cache.put(key2, 200);
CQ保证将按以下顺序(1,100)接收key1事件 - > (1,200)但是你可以比key1早得到key2的事件。 Ignite对缓存和CQ的数量没有限制。
谢谢Nikolai Tikhonov!