Hacker News Digest

Тег: #raft

Постов: 2

Making Democracy Work: Fixing and Simplifying Egalitarian Paxos (arxiv.org)

В статье представлена EPaxos* — упрощенная и исправленная версия протокола Egalitarian Paxos для распределенных систем. Классические протоколы вроде Paxos полагаются на выделенного лидера, что создает единую точку отказа и увеличивает задержку для удаленных клиентов. Egalitarian Paxos предлагает альтернативу без лидера, позволяя репликам совместно упорядочивать команды, сохраняя работоспособность при сбое до f из n=2f+1 процессов. Протокол обеспечивает быстрое выполнение команд за 2 задержки сообщений, если не более e=⌈(f+1)/2⌉ процессов выходят из строя.

Авторы отмечают, что оригинальный Egalitarian Paxos, несмотря на влияние на другие протоколы, страдает от сложности, неоднозначной спецификации и серьезных ошибок. EPaxos* решает эти проблемы с помощью более простого алгоритма восстановления после сбоев, строго доказанного корректности. Протокол также обобщает Egalitarian Paxos на весь спектр пороговых значений отказов f и e, где n ≥ max{2e+f-1, 2f+1}, что авторы доказали оптимальным.

by otrack • 08 ноября 2025 г. в 07:29 • 162 points

ОригиналHN

#paxos#egalitarian-paxos#epaxos#raft#distributed-systems#consensus-protocols#fault-tolerance#leaderless-systems#arxiv

Комментарии (48)

  • Обсуждение охватывает вопросы лидерства и консенсуса: Paxos и Raft, EPaxos, EPaxos, Multi-Paxos и Multi-Raft, а также их влияние на производительность и отказоустойчивость.
  • Участники обсуждают, что такое "лидер" в контексте распределённых систем, и какие у него обязанности, включая упорядочивание транзакций и обеспечение отказоустойчивости.
  • Участники также обсуждают, как различные протоколы консенсуса, включая Paxos и Raft, обрабатывают вопрос лидерства и как они влияют на производительность и отказоустойчивость системы.
  • Участники также обсуждают, как различные протоколы консенсуса, включая Paxos и Raft, влияют на производительность и отказоустойчивость системы.
  • Участники также обсуждают, как различные протоколы консенсуса, включая Paxos и Raft, влияют на производительность и отказоустойчивость системы.

The Raft Consensus Algorithm (2015) (raft.github.io)

Raft — алгоритм консенсуса, проще в понимании, чем Paxos, с той же отказоустойчивостью и производительностью. Он разбит на независимые подзадачи и покрывает все практические аспекты.

Консенсус — соглашение нескольких серверов о значении; решение становится окончательным. Кластер из 5 машин работает, пока живы ≥3. Используется в реплицированных конечных автоматах: каждый сервер имеет журнал команд, которые консенсус выстраивает в одинаковом порядке, чтобы все автоматы оставались синхронизированы.

Визуализации

  • RaftScope — интерактивная пятисерверная модель в браузере.
  • The Secret Lives of Data — более мягкое, пошаговое объяснение.

Публикации

  • Основная статья: In Search of an Understandable Consensus Algorithm (USENIX ATC’14 Best Paper).
  • Диссертация Диего Онгаро: расширенное описание, формальная спецификация TLA+, упрощённое изменение состава кластера.
  • Дополнительные работы: верификация (Woos et al., 2016), фреймворк Verdi (Wilcox et al., 2015), автогенерация кода (Evrard & Lang, 2015), анализ Raft (Howard, 2014–2015).

Доклады

by nromiun • 13 августа 2025 г. в 09:09 • 161 points

ОригиналHN

#raft#consensus-algorithm#paxos#distributed-systems#replication#tla+#google#spanner#viewstamped-replication

Комментарии (40)

  • Обсуждение показало, что Raft сделал распределённый консенсус понятным и реализуемым, в отличие от Paxos.
  • Участники делятся опытом: кто-то использует Raft для отказоустойчивой репликации состояния игры, кто-то — для промышленных систем.
  • Упоминаются альтернативы и тонкая настройка: спектр дизайнов репликации Алекса Миллера, Viewstamped Replication, Consul-подход с батчами.
  • Разобраны нюансы выборов лидера, сетевых разделов и гарантий «одной записи».
  • Google использует и Paxos (Spanner), и ранние внутренние варианты VR; Raft тоже реализуют повсеместно.