我正在寻找一种使用 ignite 注册单个缓存的缓存事件的方法。
可以使用此代码注册所有点燃环境的放置事件;
IgniteBiPredicate<UUID, CacheEvent> lsnr = new IgniteBiPredicate<UUID, CacheEvent>() {
@Override public boolean apply(UUID uuid, CacheEvent evt) {
System.out.println("Received event [evt=" + evt.name() + ", key=" + evt.key() +
", oldVal=" + evt.oldValue() + ", newVal=" + evt.newValue());
return true; // Continue listening.
}
};
ignite.events().localListen(lsnr, EventType.EVT_CACHE_OBJECT_PUT);
但由于性能原因,我只想为特定的地图(缓存)注册缓存事件。否则,我将不得不检查每个事件的缓存名称,这可能会导致系统负载大量事务。
感谢您的任何帮助和指导。