Webservices-web-services-architecture
Webサービス-アーキテクチャ
Webサービスのアーキテクチャを表示するには2つの方法があります-
- 1つ目は、各Webサービスアクターの個々の役割を調べることです。
- 2番目は、新しいWebサービスプロトコルスタックを調べることです。
Webサービスの役割
Webサービスアーキテクチャには3つの主要な役割があります-
サービスプロバイダー
これは、Webサービスのプロバイダーです。 サービスプロバイダーはサービスを実装し、インターネットで利用できるようにします。
サービス依頼者
これは、Webサービスの消費者です。 リクエスターは、ネットワーク接続を開いてXML要求を送信することにより、既存のWebサービスを利用します。
サービスレジストリ
これは、論理的に集中化されたサービスのディレクトリです。 レジストリは、開発者が新しいサービスを公開したり、既存のサービスを見つけたりできる中心的な場所を提供します。 したがって、企業とそのサービスのための集中化された情報センターとして機能します。
Webサービスプロトコルスタック
Webサービスアーキテクチャを表示する2番目のオプションは、新しいWebサービスプロトコルスタックを調べることです。 スタックはまだ進化していますが、現在4つの主要な層があります。
サービス輸送
この層は、アプリケーション間でメッセージを転送します。 現在、このレイヤーには、ハイパーテキストトランスポートプロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)、およびブロック拡張可能交換プロトコル(BEEP)などの新しいプロトコルが含まれています。
XMLメッセージング
この層は、メッセージを両端で理解できるように、共通のXML形式でメッセージをエンコードします。 現在、このレイヤーにはXML-RPCとSOAPが含まれています。
サービスの説明
この層は、特定のWebサービスへのパブリックインターフェイスを記述する役割を果たします。 現在、サービスの説明は、Webサービス記述言語(WSDL)を介して処理されます。
サービス発見
この層は、サービスを共通レジストリに集中化し、簡単な公開/検索機能を提供します。 現在、サービスの検出は、ユニバーサル記述、検出、統合(UDDI)を介して処理されます。
Webサービスが進化するにつれて、追加のレイヤーが追加され、各レイヤーにテクノロジーが追加される場合があります。
次の章では、Webサービスのコンポーネントについて説明します。
サービストランスポートに関するいくつかの言葉
Webサービスプロトコルスタックの一番下は、サービストランスポートです。 この層は、実際に2台のコンピューター間でXMLメッセージを転送する役割を果たします。
ハイパーテキスト転送プロトコル(HTTP)
現在、HTTPはサービストランスポートの最も一般的なオプションです。 HTTPはシンプルで安定しており、広く展開されています。 さらに、ほとんどのファイアウォールはHTTPトラフィックを許可します。 これにより、XMLRPCまたはSOAPメッセージがHTTPメッセージになりすますことができます。 これは、リモートアプリケーションを統合する場合に適していますが、いくつかのセキュリティ上の問題が発生します。
拡張可能交換プロトコル(BEEP)をブロックします
これは、HTTPの有望な代替手段です。 BEEPは、新しいプロトコルを構築するための新しいインターネットエンジニアリングタスクフォース(IETF)フレームワークです。 BEEPはTCPに直接階層化され、初期ハンドシェイクプロトコル、認証、セキュリティ、エラー処理などの多くの組み込み機能が含まれています。 BEEPを使用すると、インスタントメッセージング、ファイル転送、コンテンツシンジケーション、ネットワーク管理など、さまざまなアプリケーション用の新しいプロトコルを作成できます。
SOAPは特定のトランスポートプロトコルに関連付けられていません。 実際、HTTP、SMTP、またはFTP経由でSOAPを使用できます。 したがって、有望なアイデアの1つは、SOAP over BEEPを使用することです。