🌊

分散処理を勉強した記録~その28~

2021/04/10に公開

この記事は、
「分散処理システム」著:真鍋義文 森北出版株式会社
を参考にしています。

今回は、「リーダー選挙アルゴリズムにおける一時故障」についてです。

今まで想定してきた「故障」というのは、
一度死ぬと永遠に死ぬことを想定してきました。
しかし、一度死んだものが蘇る、仮死のような故障の場合に何が起きるのでしょうか。
詳細は省きますが、以下のようなことが考えられます。
・変数の値が変わる
・メッセージの内容が変わる
・メッセージが消失する

ここで、リーダー選挙アルゴリズムで一時故障が発生した場合について検討してみます。
「10」のプロセスが「candidate」状態になっていますが、
このプロセスが一時故障の影響により、「notleader」になってしまいました。

すると、「10」のプロセスがメッセージを送信するはずだったのに、
「notleader」になってしまったせいで、
いつまで経っても誰も何も発信しなくなりました。
デッドロック状態です。
これを解決するのが「自己安定アルゴリズム」です。

今回はここまでです。ありがとうございました。

Discussion