Однажды я пошел по пути чтения всех этих статей только для того, чтобы обнаружить, что это пустая трата времени.
Результат совсем не удивителен.
Упомянутый вами документ «[Невозможность распределенного консенсуса с одним неисправным процессом]» 1
представляет собой длинный список сложных математических доказательств, которые просто приравниваются к:
1) Консенсус – это детерминированное состояние
2) одна (или несколько) неисправных систем в среде является недетерминированной средой.
3) Никакое детерминированное состояние, действие или результат никогда не могут быть достигнуты в недетерминированной среде.
Конец. Никаких дальнейших размышлений не требуется.
Вот как это работает в реальном мире за пределами академии.
Если вы хотите, чтобы агенты достигли консенсуса, то должны быть добавлены конструкции аппроксимации синхронной (временной модели), чтобы сделать среду детерминированной в рамках заданного набора ограничений. Например, простые конструкции, такие как Timeouts, Ack/Nack, Handshake, Witness или более сложные конструкции.
Чем ближе вы хотите приблизиться к синхронной детерминированной модели, тем более сложными становятся конструкции. Гипотетическая синхронная модель будет иметь бесконечно сложные конструкции. Также принимая во внимание, что полностью детерминированная синхронная модель никогда не может быть достигнута в нетривиальной распределенной системе. Это связано с тем, что в любой нетривиальной динамической многомерной системе с переменным начальным состоянием существует бесконечное число возможных состояний, действий и результатов в любой момент времени. Теория хаоса
Рассмотрим сложность конструкции для обнаружения отброшенных TCP-пакетов из-за ошибок переполнения буфера в маршрутизаторе на узле номер 21. И сложность обнаружения той же ошибки переполнения буфера с отбрасыванием сигнала обнаружения из самой конструкции.
person
tcwicks
schedule
11.08.2016