仅使用一个Hazelcast实例的分布式查询的Hazelcast

时间:2017-07-14 10:17:19

标签: hazelcast hazelcast-imap

实际上,我正在尝试使用Hazelcast来提供缓存数据的原型。 Hazelcast部署在弹簧启动微服务中。

我们使用分布式查询来搜索具有键的部分值的条目。

我们的基础设施目前只能提供一个微服务实例。该映射已在数据库中使用MapStore实现进行持久化。

如果微服务关闭,我们将丢失内存中的所有数据,并且分布式查询不会返回任何结果。使用loadAllKeys()等通过MapStore初始化内存中的数据不是一种方法,因为我们将在数据库中加载大量条目。

作为临时解决方案,我们直接查找数据库。它肯定不是最好的解决方案,但它暂时起作用。我们希望有一个正确的解决方案。有没有人知道如何做到这一点?

最佳

1 个答案:

答案 0 :(得分:0)

如果关闭群集并使用loadAllKeys()重新填充,则会以数据库可以处理的速度运行。如果时间太长,那是因为数据库太慢了。

找到更快的持久存储是真正的答案,尽管减少中断次数也会有所帮助。

后者需要设计思路,例如便携式对象允许内存中的数据在不重新加载的情况下更改格式。