MessagingとDistributed Object

PofEAA Chapter7の最後のほうで、分散システムの連携は非同期メッセージングでしょ的な話が出てきてたのでその関連です。artima developerに、メッセージングマンセーという記事と、それに対して分散オブジェクトもいいところあるよという記事が出てました。
参考までにメモ。

Messaging is the Right Way to Build a Distributed System

メッセージングは

  • 送信されているメッセージが見やすいからデバッグしやすい
  • テストしやすい
  • 変化に強い
    • メッセージに要素を追加しても、それを使う部分にしか影響しない
    • バージョンアップしたときに、古いバージョンのメッセージが来たら新しいバージョンに変換するような仕組みも簡単に作れる
  • 違うプラットフォーム間でつなぎやすいし、プラットフォームを変えやすい
  • ステートレスに作るからスケーラビリティがいい

といいことづくめですよ。

Messaging may not be the way to Build a Distrbuted System

「プログラムコードがネットワーク上を移動する」という分散オブジェクトの特徴をSQLになぞらえながら、

  • データに近いところでコンピュータパワーを使う
  • サブルーチン呼び出しみたいなインターフェイスって簡単だよね
  • プロトコルとか気にしなくてもOK
  • サーバとクライアントの両方のコネクションを管理できる

分散オブジェクトにもいいとこあるよね。