Как алгоритм консенсуса Raft выбирает лидера кластера и что происходит, если сеть разделяется на два изолированных сегмента?

Узел Raft после election timeout становится кандидатом, увеличивает term и запрашивает голоса. Лидером становится кандидат, получивший большинство голосов; при разделении сети работать может сторона с кворумом.

Короткий ответ

Что ответить на собеседовании

Узел Raft после election timeout становится кандидатом, увеличивает term и запрашивает голоса. Лидером становится кандидат, получивший большинство голосов; при разделении сети работать может сторона с кворумом.

Подробный разбор

Ответ с пояснениями

Узел Raft после election timeout становится кандидатом, увеличивает term и запрашивает голоса. Лидером становится кандидат, получивший большинство голосов; при разделении сети работать может сторона с кворумом.

Узел голосует не более одного раза за term и проверяет актуальность журнала кандидата. Случайные таймауты снижают риск постоянного разделения голосов. Изолированный старый лидер без большинства не может подтверждать новые записи. После восстановления связи больший term заставляет устаревших участников отступить. Если ни один сегмент не имеет большинства, новые записи не подтверждаются: доступность уступает согласованности.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее