Несмотря на то, что это предупреждения, кажется, что Кафка работает не так, как должно.Является ли это предположение правильным?
Да.
Почему происходит сбой этого StandbyTask?
Кажется, что StandbyTask извлечен из недопустимого смещения,Это на самом деле не дает сбоя.
Удаляет ли это мои действительные хранилища состояний журналов изменений?
В этом случае удаляется только локальное хранилище, тема журнала изменений не затрагивается,Локальное хранилище удалено, потому что оно не синхронизировано с темой журнала изменений.Это позволяет начать повторное создание хранилища с нуля.
Должен ли я и как настроить политику сброса для этого потока потока?
Нельзя настроить политику сбросадля восстановления потребителя.Если вышеперечисленное происходит, Kafka Streams удаляет локальное хранилище и seeksToBeginning()
в разделе журнала изменений, чтобы воссоздать магазин с нуля.
Почему сбрасывается смещение для этого журнала изменений?
Может быть, StandbyTask отстает?
Вы можете попробовать включить регистрацию TRACE для org.apache.kafka.streams.processor.internals.ProcessorStateManager
.Смещения StandyTasks отслеживаются в локальном файле контрольных точек, который записывается при фиксации.Смещения регистрируются при фиксации:
log.trace("Writing checkpoint: {}", this.checkpointableOffsets);
Это должно помочь выяснить, отстает ли StandbyTask.В этом случае вам может понадобиться больше потоков или больше экземпляров, чтобы избежать этого.