12のソフトウェア・アーキテクチャの落とし穴とその避け方 成功するソフトウェアアーキテクチャを開発するのはシンプルだが、簡単ではない。QARを理解し、QARを最大限に満たすトレードオフを理解し、実行するには、洞察力と経験が必要であり、その多くはアーキテクチャ自体の実験を繰り返すことで集めなければならない。プロセス自体は単純だが、考慮すべきトレードオフはしばしば難しく、簡単な答えはめったにない。
Zookeeperは現代の分散システムに不可欠なミドルウェアで、メタデータの管理、更新通知、リーダー選出といった問題を解決する。自分でZookeeper APIを叩く人は少ないかもしれないが、今やHadoop Namenode HA*1もYARN ResourceManager HAもHBaseもZookeeperを要求する。とにかく使う必要がある、という人は今や多いのではないだろうか。 こういったソフトウェアが何故必要なのか、どういった役割を持つのかについて、明快な回答を返せる人はあまり多くないのではないだろうか。Zookeeperは必要性を喧伝され、あちこちで使われ、しかしいまだに、何台で動かす必要があるのか、どのように運用されなければならないのか、ということをまとめて学べる資料などは多くない。 ということで、この本を読もう。 「2.2.1 Zookeeperのクォラム」。個人的には、
ZooKeeperによる分散システム管理 Flavio Junqueira, Benjamin Reed ISBN4873116937 オライリージャパン ApacheのHadoopプロジェクトから派生したZooKeeperを紹介した本。 頑健な分散協調を容易にしてくれるZooKeeperだが、実際にはかなり落とし穴が ボコボコある。落とし穴の避け方を教えてくれるのがこの本。 Zab プロトコルも詳述されていて、とても参考になる。 HadoopのYARNやHiveなど、ZooKeeperを利用したシステムは今後増加すると思われる。 適切にZooKeeperを設定するには、それなりの理解が必要なのでこの本を読みましょう。 開発者が書いている本なので内容は信頼できる。 でも(世間的にはZooKeeperの元ネタだと言われる)GoogleのChubbyに全く言及が 無いっていうのはどうなんだろう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く