是否可以通过以下方式配置CacheEntryProcessor的执行,如下所示:EP应该在
上执行仅限主要
在主要和副本
我知道如果我有 ATOMIC 缓存,EP只会在主要文件上执行,只有条目被发送到副本,而不是EP。
但我想要的是
使用TRANSACTIONAL缓存,EP将被发送到主要副本和副本,但是为了阅读,我希望EP仅在主要上执行。
可以在Apache IgniteCache上实现此目的。
答案 0 :(得分:3)
Apache Ignite不会在ATOMIC模式下向备份(副本)节点发送增量。如果EntryProcessor修改了条目,那么整个条目将被发送到备份节点,而不是delta。当入口处理器只读取数据(不调用 MutableEntry #setValue 方法)时,EP不会被发送到备份节点。默认情况下,这适用于ATOMIC和TX缓存模式。
任何方式,用户的代码都不应该依赖于此行为,因为它的实现细节。这是最好的做法。