0

我有 2 个使用 Hazelcast 的节点。

节点 A是生产者,它将项目放入队列

节点 B是一个消费者,它从队列中消费或汇集项目。我将 ItemListener 添加到节点 B 中,因此当一个项目添加到队列中时,消费者会注意到并开始消费。

如果一切正常,则没有什么问题,但是.. 有时消费者已关闭,而生产者仍在工作并将项目放入队列。当我再次启动消费者时,它只是在生产者添加项目时消费。所以.. 待处理的项目怎么样。

我正在使用 Hazelcast 3.3。

有没有解决这个问题的方法..?

谢谢。

4

1 回答 1

0

这不是错误,ItemListener 是一个侦听器,因此在添加/删除项目时会触发它,因此当您的消费者开始检查队列中是否有任何待处理元素时,您必须添加新功能。

在我的情况下,我只是创建一个心跳来询问队列是否有任何元素,在这种情况下执行消费者方法。

于 2018-09-13T12:57:50.543 回答