Если вашей карте не нужны никакие резервные копии, тогда EntryProcessor
может безопасно вернуть null
из getBackupProcessor () .Когда возвращается null
, резервные узлы не будут выполнять никаких EntryBackupProcessor
.
В противном случае, если вы настроили резервные копии для карты, но вернули null
для EntryBackupProcessor , запись не будет реплицированак резервным узлам.Это будет обрабатываться так, как будто нет резервных копий, настроенных для карты.Первичные и резервные копии со временем станут несовместимыми.Когда происходит сбой первичного сервера, вы теряете обновления, сделанные EntryProcessor
.
. В этом случае, если вам нужны резервные копии, вы можете написать пользовательский EntryBackupProcessor
, который может просто скопировать результат первичного EntryProcessor
'вместо выполнения логики EntryProcessor
.Например:
class CustomEntryBackupProcessor implements EntryBackupProcessor {
private Object resultOfEntryProcessor;
@Override
public void processBackup(Map.Entry entry) {
entry.setValue(resultOfEntryProcessor);
}
}