Hazelcast队列信息

Pau*_*aul 6 java hazelcast

我目前正在使用hazelcast编写分布式系统.关于使用hazelcast实现的队列,我有几个问题.

  1. 从队列处理数据的最佳方法是什么?我目前在每个"节点"上都有线程读取处理数据的阻塞队列.这是正确的还是有一些我不知道的类,像JMS或messageListener一样处理这个问题?
  2. 我看到有一个生存时间秒设置,它将在过期后从队列中删除条目.我的问题是......有没有办法检测从队列中删除过期的项目?我知道有听众,但这没有帮助,因为这是在所有"节点"而不仅仅是一个"节点".我正在寻找一种为每个过期消息执行代码的方法(类似于死信队列).

关于这个问题的任何意见或建议将不胜感激.

谢谢

Tal*_*urk 9

  1. 目前没有别的办法了.因此,您将在每个节点上调用queue.take().Hazelcast团队计划添加类似于JMS MessageListener的IQueue.addQueueConsumer(QueueConsumer)

  2. 你是对的.添加监听器并不是一个很好的方法,因为它是非常昂贵的操作.您可能需要在http://code.google.com/p/hazelcast/issues上为此创建问题.有功能肯定很好.

-talip @ hazelcast