Подождите, пока Zookeeper Reconnect - PullRequest
0 голосов
/ 11 июня 2019

Я использую клиент Zookeeper непосредственно в проекте. Но в некоторых записях я получил исключение ConnectionLossException или SessionExpiredException.

Как лучше всего обработать это исключение и сохранить все временные узлы, которые я создал с этим клиентом:

  1. Попробуйте еще раз, пока не заработает
  2. Подождите, пока клиент снова подключится, и попробуйте снова
  3. Дождаться события SyncConnected и повторить попытку

При всех этих подходах ни один не может потерпеть неудачу, поскольку метод вызывающей стороны ожидает, что действие будет выполнено.

В моей предыдущей реализации я закрывал клиент и создавал новый. Но этот подход удаляет все мои временные узлы, которые я создал.

...