Кворум зоопарка и не кворум - PullRequest
0 голосов
/ 08 ноября 2018

Эксперты Zookeeper.

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

Предположим, у меня есть ZK-кластер из 5 серверов, а у меня кворум 3. Теперь это гарантирует, что серверы не перейдут в сценарии с раздельным мозгом, если они расположены на двух физически отдельных DC или компьютерах.

Тем не менее, я хочу знать, что если Кворум равен трем, это означает, что серверу Лидера нужно будет подождать, пока по крайней мере 2 сервера реплицируют записанные данные, всего 3 реплицированных данных. Но что, если клиент подключается к серверу, который не входит в состав Кворума, ни к одному из двух серверов, не означает ли это, что он получает старые данные?

1 Ответ

0 голосов
/ 08 ноября 2018

Во-первых, вы не можете «установить» кворум.Он автоматически рассчитывается из конфигурации, используя N/2+1 (большинство), где N - номер сервера zookeeper *.

Сервер Zookeeper, не являющийся частью Кворума, становится недоступным и не может передавать данные клиентам, поэтому нет риска увидеть старые данные.

...