2009-06-15 9 views
4

HTTPサービスのクライアントは、特定のコンテンツタイプのデータを要求または投稿することによって、それらが理解するバージョン(および形式)を指定できます。 HTTPプロトコルは、コンテンツタイプが理解できないことを報告するためのエラーコードを定義します。信頼できる非同期メッセージングによってアクセスされるサービスのバージョン管理を実装するトレードオフ?

メッセージングシステム(JMS、MQシリーズなど)には、メッセージプロトコルのバージョンとコンテンツ形式を記述する標準的な方法がありません。

信頼性の高い非同期メッセージングでアクセスするサービスのバージョン管理はどのように実装しましたか?

いくつかの可能性:

  • 送信者は、
  • キューまたはトピック名、バージョン、その宛先
  • で受け付けたメッセージのプロトコルバージョンを含むメッセージプロパティとしてバージョンを示すのペイロードでありますメッセージ

私は確かに他の方法があります。どのようにしましたか?どのような長所と短所がありますか?

答えて

1

ペイロード以外のバージョンを指定するメリットの1つは、ペイロードに対応できるコードのビットを簡単に特定できることです。また、新しいバージョンでペイロードの内容を根本的に変更することもできます。また、メッセージを簡単にルーティングすることもできます。

全体的に私はここで正しいか間違った答えがあるとは思わない、あなたが指定したすべてのオプションを扱うことができ、あなたの好きなメッセージバスはあなたが従うべきベストプラクティスを持つかもしれない。

+0

私は間違いのない、あるいは間違った答えがないことに同意します。 「ベストプラクティス」のようなものはありません。だからこそ私は具体的な経験を求めました。 *あなたはどのような仕組みですか?どんな状況で?何がうまくいったの?あなたはどんな問題に遭遇しましたか? – Nat

関連する問題