Использование Paxos в динамической среде - PullRequest
9 голосов
/ 23 августа 2011

Алгоритм Paxos может выдерживать до F сбоев при использовании процессоров 2F + 1.Насколько я понимаю, этот алгоритм работает только с фиксированным числом процессоров.Можно ли использовать этот алгоритм в динамической среде, где можно динамически добавлять и удалять узлы?

Ответы [ 4 ]

5 голосов
/ 23 августа 2011

Да, возможно, есть даже некоторые статьи по этому вопросу.Из того, что я помню, я прочитал немного о том, как это сделать, было описано здесь http://research.microsoft.com/pubs/64634/web-dsn-submission.pdf Надеюсь, это то, о чем вы спрашивали.Ищите «динамические паксо».

3 голосов
/ 04 октября 2011

Документ Stoppable Paxos немного проще для понимания и позволяет безопасно переконфигурировать (сложение и вычитание узлов): http://research.microsoft.com/apps/pubs/default.aspx?id=101826

1 голос
/ 23 августа 2011

Если у вас есть абсолютное максимальное количество узлов, то оно все равно должно работать.Но вы останетесь в ситуации, когда число ваших динамических узлов равно 6, а максимальное - 11, поэтому, если 1 узел терпит неудачу, вам не повезло (несуществующие узлы по умолчанию отказывают).Если вы удаляете и добавляете узлы, вы можете восстановить состояние узла, который вы удалили, к узлу, который вы добавляете, чтобы он не считался отказом.

0 голосов
/ 21 июля 2015

Да. Gryadka - это реализация JavaScript Paxos, поддерживающая динамическую реконфигурацию в 500 строк.Он основан на идеях Вертикаль Паксос и Плот.

...