hazelcast分布式查询每小时变慢

时间:2019-04-17 10:00:18

标签: hazelcast

每2秒我的WebSocket应用程序一次。将查询发送到我的hazelcast群集(2个节点,8个CPU,16 GB RAM)以获取发送客户的最新日期。

应用程序启动时需要100毫秒,但是1-2天后需要3-15秒钟,然后我再次重启时需要100毫秒,此查询发生了什么?

我的WebSocket应用使用了总CPU的%5,节点使用了60 CPU。

但是节点CPU每小时使用的CPU也在增加。

2 个答案:

答案 0 :(得分:1)

努里,

没有看到查询和数据大小,除了提出一些一般性建议外,要提出任何建议并不容易:

  • 在要查询的日期字段中添加索引,这将大大提高查询性能,但是需要使用可移植序列化或Hazelcast节点上可用的POJO类。

  • 如果您每2秒需要此信息,并且我也假设您也经常更新,请使用Hazelcast Jet,定义流以查找最大日期。由于此作业仅查找传入的新更新/插入/删除,而不是整个列表,因此它可能会更快。然后,您可以将该信息存储在另一个Hazelcast Map中并使用基于密钥的访问,这非常快。

如果您共享一些信息,查询本身,数据集大小,更新率等,我可以给出更详细的建议。

答案 1 :(得分:0)

我放置了很多索引,并且我也增加了hz查询的大小,但它们没有帮助,数据少于一百万,所以出了点问题,我使用了hz数据序列化,但没有帮助

相关问题