我在 hazelcast 中获得基数服务时遇到问题。在下面的代码中,我向基数估计器添加了一些访问者。messageID是唯一的。在此代码填充 5K 唯一项的测试环境中。
public void AppendVisitor(String messageID, String visitor) {
CardinalityEstimator cs = this.hazelcast.getCardinalityEstimator(messageID);
cs.add(visitor);
this.viewsList.putIfAbsent(messageID, Long.valueOf(System.currentTimeMillis() / 1000L));
}
在另一个类中的viewsList到期时,我编写了侦听器代码。入口事件键是之前代码中的 messageID。但是当调用这个函数时,访问为0。似乎它得到了另一个空对象。
@Override
public void entryEvicted(EntryEvent<String, Long> entryEvent) {
long visit = hazelcast.getCardinalityEstimator(messageID).estimate();
}