2014-12-17 2 views
1

Я хочу обновить конфигурацию распределенной системы, то есть хочу, чтобы каждый узел получал обновленную конфигурацию.Настроить все узлы распределенной системы

Теперь я могу представить несколько способов сделать это:

  • Там может быть центральной базой данных конфигурации.
    • Преимущество: Даже совершенно новые узлы знают, где получить исходную конфигурацию.
    • Недостаток: база данных является единственной точкой отказа.
  • Каждый узел имеет свою собственную конфигурацию, и все узлы обновляются снаружи.
    • Преимущество: Нет единой точки отказа.
    • Недостатки: Длительное время ожидания; новым узлам нужен способ получить их первоначальную конфигурацию.

Если я использую центральный инструмент для второго подхода, или что-то, например, как протокол сплетен, не имеет значения. В принципе, общая идея состоит в том, чтобы либо пойти на авторитет (на основе pull-based), либо на автономию (push-based).

Как обычно распределяются распределенные системы? Какие существуют варианты? Любые подсказки, идеи, ...? Каковы лучшие или плохие практики здесь?

ответ

1

Голо,

я всегда выступал за второй подход, хотя его легче сказать, чем сделать! в принципе, вы могли бы взглянуть на то, что делает cassandra DB, как они сплетничают в фоновом режиме. Эта методология не является строгой, поскольку узел может иметь конфигурацию обновления, чем другой, но если вы не заботитесь о каких-то секундах, тогда это нормально.

Смежные вопросы