我要求我有一个连续的信号流,我希望在一定时间内没有信号时被告知。
现在我将每个信号添加到Hazelcast地图中,如果它在一段时间内没有更新,则会触发Hazelcast EntryExpiredListener。
到目前为止,非常好,但是每个副本都会调用EntryExpiredListener,因此我会收到N次通知。
是否有办法仅在主节点或仅一个副本中通知?
我知道我有点滥用HZ,我也对其他想法持开放态度。
答案 0 :(得分:1)
我猜你使用IMap::addEntryListener
来注册你的到期听众。而是尝试使用IMap::addLocalEntryListener
,只会在当前拥有该条目的节点上触发,这意味着您只会收到一个通知。