B2B Web サービスの保証された配信: Point-to-Point 使用パターン
この使用パターンでは、メーカーは提携ディーラーのネットワークを通じて製品を販売します。 このメーカーは、自社の小売り組織と、最大手かつ最重要の 6 つのディーラー間で IT 統合を進めるための、パイロット・プロジェクトを開始しました。
既存の技術ソリューション
歴史的に、企業間の「e-commerce」は電子データ交換 (EDI) を使用して実施されてきました。 EDI は、企業間メッセージのコンテンツと形式の一連の標準です。
通信パートナーの ID がわかっており、変更されていない場合は、業界標準のメッセージ定義の使用は厳密には必要ありません。 企業間 e-コマース (OASIS eXtensible Markup Language (ebXML) を使用した電子ビジネス 仕様など) を実施するために他の XML ベースの標準が使用可能ですが、製造元は Web サービス・テクノロジーの使用を調査することを決定し、さまざまなソースからの WSDL 文書を使用してサービス・インターフェースを定義しています。
初期パイロット・プロジェクトでのメーカーとディーラー間の対話は、2 つのカテゴリーに分かれます。
- 情報の要求。 対話は両方向です。対話では情報を要求する要求メッセージが送信され、要求された情報を含む応答メッセージが逆方向で送信されます。 ディーラーからメーカーへ出される情報要求の例としては、「getOrderStatus」があります。
- 更新の要求。 これらの対話は片方向です。対話では、更新要求の送信側が、他の作業に進むのに応答の受信に左右されることはありません。 ディーラーからメーカーに出される更新要求の例としては「placeOrder」があります。 メーカーからディーラーに出される更新要求の例としては、「deliveryConfirmed」があります。
製造元は、 WebSphere® Application Server を使用して、 HTTP 上の SOAP および JMS 上の SOAP による情報要求を実装しています。 販売店は実装技術を選択する自由があり、 WebSphere Application Server を使用する必要はありません。
メーカーは 2 つの異なる方法で更新の要求を実行します。
- SOAP over HTTP を使用する方法。 この場合、サービスは、要求と、要求側が正常に応答を受信したときに完了すると見なされる応答の対話として表されます。 サービスは、重複要求を検出してその要求に対して正常な応答を行う (これはべき等操作と呼ばれます) ように実装する必要があります。また、クライアントは、要求が送信された後で応答が受信される前に通信が中断された場合に再試行するように実装される必要があります。
- 上記の制限を回避するために、製造元は WebSphere Application Server および WebSphere MQからの SOAP over JMS サポートも使用します。 この場合、要求は片方向サービスとして表され、メッセージは確実に配信されます。 製造元は、JMS プロバイダーとして WebSphere MQ を使用し、 WebSphere Application Server および WebSphere MQも使用するすべてのディーラーがこのソリューションを使用できるようにします。 メッセージの送信のためにディーラーとメーカーが接続される必要はありません。
メッセージは、2 つの企業間で送信されるメッセージの保全性と機密性を確保するために、また、送信側の ID を確立する一環として、仮想私設網を介して送信されます。
ビジネスの問題
メーカーとディーラーの両方が情報の要求サービスの実装に満足していても、更新の要求の場合には多くの問題があります。
- SOAP over HTTP を使用する方法
- メーカーにとって、べき等サービスの実装は複雑で、そのため開発時により経費がかかります。 コーディングの誤りと、ソリューションの堅牢性が下がる傾向が増し、注文が欠落したり、重複したりして、高い代償を払うことになります。
- ディーラーにとっては、再試行論理の実装は、同様に複雑かつ高価で、エラーしやすいものです。
- メーカーとディーラーの双方にとって、サービスを呼び出すために両方の要件を備えることは問題です。 特に、多くのディーラーではシステムの常時稼働体制をとっておらず、他方、メーカーでは週末が価格の更新をディーラーに伝えるのに理想的な時間です。 同様に、ディーラーとメーカー間の接続が使用できないときに注文を出せないことは、深刻な業務問題です。
- SOAP over JMS を使用する方法
- WebSphere Application Server および WebSphere MQ の使用を必要とすることは、ディーラーの現在のコレクションでは許容されますが、プロジェクトが拡張されるにつれて、共通のソフトウェア・プラットフォームを使用しない、または使用できない他のパートナーが存在する可能性があります。
WS-ReliableMessaging を使用する場合のソリューション
WebSphere Application Server の WS-ReliableMessaging サポートにより、メーカーは既存のカスタム再試行ソリューションを置き換え、信頼性の高い一方向メッセージングを実現できます。これにより、 HTTP による標準的なSOAP一方向メッセージングが利用可能となります。 アプリケーションの再試行論理を除去することでアプリケーション・コードが簡素化され、より単純で迅速なアプリケーション開発が可能になります。
WS-ReliableMessaging の場合、ディーラーとメーカーはメッセージを送信するために接続されている必要はありません。
WS-ReliableMessaging 標準は、SOAP over HTTP メッセージングに信頼性を付加し、SOAP over JMS を使用する必要性を低減します。
SOAP over HTTP による WS-ReliableMessaging は相互運用可能な標準なので、ディーラーのネットワークは共通のソフトウェア・プラットフォームを使用する必要がありません。