Zookeeper: Получит ли обновление с клиента результат в устаревших данных? - PullRequest
2 голосов
/ 20 марта 2019

Например, zkClient A подключается к zkServer X. А zkClient A выдает запрос на обновление znode "/ a" с 0 до 1. После получения этого запроса zkServer X перенаправляет его лидеру.

Затем лидер передает это предложение по обновлению всем zkServers. После кворума zkServers отправить запрос на обновление, обновление выполнено успешно.

Затем zkClient A выдает запрос на чтение, чтобы получить значение znode "/ a". И zkServer X получает этот запрос на чтение.

Таким образом, если zkServer X не входит в кворум и zkServer X не зафиксировал обновление, чтобы догнать лидера, zkClient A все еще может получить устаревшее значение znode "/ a". В этом случае возвращаемое значение равно 0.

Правильно ли мое понимание?

...