Re: Enterprise Integration Patterns - Chapter 11: System Management

この本はシステム間のインテグレーションの本です。主に、メッセージングサービスを使った連携のパターンを整理してます。昨日、11章システム管理を読んで感心しました。以前から、メッセージングサービスを使ったシステムでの管理方法に疑問をもっていたからです。

メッセージングサービスとは、電子メールに例えられるような非同期通信のサービスです(電話は同期通信ですね)。つまり、相手にリクエストを出したら、、相手の処理を待たずに別の仕事にとりかかれます。相手がそれをいつ処理しようと相手の勝手です。お互いに時間に束縛されないのがメッセージングサービスのメリットです。相手が保守のためにダウンしていても、復旧したあとメッセージを処理すればよいのですから障害にも強いです。

でも、このような連携方法だと、メッセージがA->B->Cとたらい回しされて処理が進むので、どこでメッセージが滞留しているのか、どこで障害が発生しているのかを知る必要が生じます。前置きが長くなりましたが、この本の11章では、この方法について書かれています。

その一つがControl Busパターン。これはアプリケーションのメッセージとは別に制御情報を流すためのメッセージを定義するというもの。確かに、各コンポーネントが制御情報の授受のためのキューを持てば、管理コンソールから構成を一斉に変更できるし、各コンポーネントの状態把握もできる。データバスとコントロールバスの分離。なるほど。