Воссоздание магазина занимает много времени - PullRequest
0 голосов
/ 31 января 2019

Я использую потоки Кафки, используя весенние потоки облаков.Я делаю агрегацию, когда данные используются из темы.Данные попадают в несколько магазинов, которые я определил.При остановке и перезапуске приложения требуется много времени, прежде чем приложение будет готово из-за восстановления магазина.Есть идеи, если это распространено?Я ожидаю, что это будет довольно быстро, поскольку магазин будет сохраняться за пределами приложения.

С уважением

Майкл

Обновление 4 февраля Чтобы бытьболее ясно, что магазин сохраняется вне приложения, вне контейнера.Так что должно быть все, что нужно, верно?

1 Ответ

0 голосов
/ 01 февраля 2019

По умолчанию данные хранилища состояний поддерживаются темами Kafka.Если запускается экземпляр Kafka Streams, он ищет данные своего хранилища состояний (в каталоге, определенном state.dir).Если он не найдет его, ему придется прочитать его в темах государственного магазина в Кафке.В зависимости от объема данных, который у вас есть, это может занять некоторое время.

Примером этого является работа с контейнерами.Если вы не используете тома для сохранения данных после истечения срока службы вашего контейнера, экземпляру приложения Kafka Streams придется заново создавать его каждый раз при чтении из тем;поэтому вы можете сократить это время, отсоединив это хранилище от срока службы вашего контейнера, чтобы оно было доступно при перезапуске.

Обновленный ответ : Да, хотя имейте в виду, что вы потеряете его, еслитом - это обычный том в хосте, потому что в этом случае он не будет потерян с вашим контейнером, но он будет потерян, если ваша хост-машина умрет.Для обеспечения дополнительной отказоустойчивости может потребоваться, чтобы он сохранялся не только на вашем контейнере, но и на вашем хост-компьютере (например, в терминах AWS, внешние тома (WBS) или тома экземпляра).

Кроме того, это будетпомогите установить num.standby.replicas выше 1, чтобы другой экземпляр мог вступить во владение при остановке экземпляра.Имейте в виду, что это, конечно, добавит дополнительную нагрузку в ваши случаи.

...