Webサービスの基礎知識Beginner's Guide(5/7 ページ)

» 2007年12月15日 03時47分 公開
[Shawn-Hermans,Open Tech Press]
SourceForge.JP Magazine

メッセージング

 Webサービスメッセージをある地点から別の地点に届けるのは必ずしも簡単ではない。Webサービスは、適切な数のメッセージを適切なエンドポイントで受け取るようにする必要がある。だがSOAPは、企業向けサービスで求められる高度なメッセージング機能をもともとサポートしていない。

 WS-Addressingは、こうしたSOAPに関する制限に対処したものだ。SOAPヘッダにはあて先情報が一切与えられない。よって、普通はWebサービスのURLがあて先情報になる。しかし、このやり方だとWebサービスの高度なルーティングや設定に制限が生じる。例えば、Webサービスは呼び出し元以外のアドレスに応答を返せなくなる。WS-Addressingは、対象とする受信者、reply-toアドレス、メッセージIDを識別する手段を備えている。また、アドレッシングエラーを特定できる仕組みもある。WS-AddressingはそのほかのWS-*規格の多くで利用されている。

 WS-ReliableMessagingは、一連のメッセージを信頼できる形での配信を保証する。この仕様には、非常に柔軟性の高い配信保証が規定されている。サービス所有者は、利用者によるメッセージ受信に対して、順序どおり(in order)、高々一度(at most once)、厳密に一度だけ(exactly-once)、少なくとも一度(at least once)という要件を指定できる。また、確認応答の送信について調整を加えることも可能だ。サービス側は、個々のメッセージまたは一連のメッセージに対して確認応答を要求できる。配信完了の確認応答が必要なのか、配信エラーの通知だけを求めるのかといった指定もできる。

 さらに別の規格では、出版/購読(publish/subscribe)パターンのような高度なメッセージパターンが定義されている。出版/購読メッセージパターンは、会報、新聞、雑誌を購読したことがある人にはおなじみのものだ。通常は、情報の発信者が新たなメッセージを公開する。購読者は興味のあるメッセージに申し込むことで、受け取るどのメッセージを選択する。多くの場合、通知ブローカー(notification broker)と呼ばれる仲介者が存在し、購読申し込みの管理を行っている。そのおかげで、情報発信者は購読の管理、全購読者への情報配信といった面倒な処理に追われずに済む。

 出版/購読メッセージングの実装において競合する2つの規格として、WS-NotificationとWS-Eventingがある。技術的な違いは幾つかあるが、意図するところは同じである。結局、利用する側は実装面での差に基づいてどちらかを選んで使うことになるだろう。

関連キーワード

Webサービス | SOAP | XML | 標準 | SOA | Beginner's Guide


Copyright © 2010 OSDN Corporation, All Rights Reserved.

注目のテーマ