Sap-pi-communication
SAP PI-コミュニケーション
SAP PIでは、2種類の通信-*同期*および*非同期*を定義できます。
同期通信
同期通信は、要求と応答の操作によって呼び出され、操作の直後にプロセス出力が返されます。 一般的に言えば、同期シナリオとは、送信側プロセスが受信側にリクエストを送信し、応答を待機することです。 受信者側でエラーが発生した場合、送信者アプリケーションはメッセージを再度送信する責任があります。
このアプローチでは、送信者がタイムアウト後にメッセージを再送信し、重複したメッセージが存在する可能性があります。 PIでのこのアプローチは、* BE(ベストエフォート)*として知られています。
*A* と *B* の2つのシステムを検討してください。 そして、2つのシステムの間に中間システムIを導入します。 システムAとシステムI間の通信は同期で、システムAとシステムBは非同期です。
この通信シナリオでは、次のタイプのエラーが発生する可能性があります-
- アプリケーションエラー-メッセージの処理中に受信側でエラーが発生し、送信側はこのエラーを認識せず、応答を待機し続けます。
- ネットワークレベルエラー-このエラーでは、送信者と受信者の間の通信ネットワークにエラーがあります。 送信者はこれを認識していないため、メッセージはその間に留まり、送信者は操作がタイムアウトするまで待機します。
- 応答メッセージのエラー-このシナリオでは、エラーが発生し、応答メッセージが間に挟まって送信者が待機し続けます。
利点
同期通信を使用する主な利点は次のとおりです-
- 応答メッセージのルーティングを構成する必要はありません。
- リクエストへの応答を関連付ける必要はありません。
- この通信では、応答がすぐに受信されます。
推奨シナリオ
これは、たとえば注文書の閲覧など、読み取り操作を伴う操作に適しています。
デメリット
以下は、非同期通信を使用する主な欠点です-
- 障害が発生した場合、送信者はメッセージを再度送信する必要があります。
- *受信システム*は、重複したメッセージをチェックするように設定する必要があります。
- このシナリオでは、応答が受信されるか、タイムアウトエラーが発生するまで、送信者アプリケーションがブロックされます。
- 複数の受信機を設定することはできません。
非同期通信
非同期通信では、2つのシステム間に中間システムまたはミドルウェアを追加します。 送信側アプリケーションが要求を送信するとき、受信側アプリケーションが応答を送信するまで待機しません。 何らかの理由で障害が発生した場合、ミドルウェアがメッセージを再送信します。 必要に応じて、受信側システムは、別の非同期呼び出しとして応答をSenderに返信できます。
SAP PIのこのアプローチは、* Exactly Once(EO)または Exactly Once in Order(EOIO)*と呼ばれます。
中間システムはキューであり、Aからのメッセージは最初にキューに追加され、受信側でキューからプルされて受信側に送信されます。 システムBからの応答メッセージは
先入れ先出し(FIFO)を使用して、ビジネス要件に従って特定の状況で順序を維持することもできます。 このシナリオは、順序が維持された非同期または正確に1回の順序(EOIO)と呼ばれます。
非同期通信により、配信が保証されます。 レシーバーシステムがしばらく利用できない場合、中間キューはメッセージを保持し、レシーバーシステムが利用可能になるまでそこに残り、メッセージがキューからプルされてレシーバーシステムに送信されます。
推奨シナリオ
これは、発注書の作成や発注書の変更などの変更操作に推奨されます
利点
以下は、非同期通信の主な利点です-
- 障害が発生した場合、SAP PIシステムは配信の保証を保証し、メッセージを再送信します。
- 重複チェックに設定は必要ありません。
- このシナリオでは、複数のレシーバーを構成できます。
- 送信側システムと受信側システムの両方が同時にオンラインである必要はありません。
- PIは、非同期通信を介して送信されたすべてのメッセージを記録します。
- 中間システムがメッセージと応答要求を保持するため、タイムアウトはありません。
デメリット
以下は、非同期通信の主な欠点です-
- このシナリオでは、送信者は、応答を独自に要求に関連付ける必要があります。
- 応答メッセージは個別に実装およびルーティングする必要があります。 *すぐに応答するわけではありません。
SAP PI —テクノロジー
SAPは、NetWeaverに基づいたSAP NetWeaver Process Integrationと呼ばれるミドルウェアを提供しています。 SAP NetWeaver PIは、Simple* Object Access Protocol(SOAP-HTTP)*と呼ばれる特定の形式でメッセージを配信します。 このメッセージには、ヘッダーとペイロードが含まれています。 ヘッダーには、送信者や受信者の情報などの一般情報が含まれ、ペイロードには実際のデータが含まれます。
システムは、SAP NetWeaver PIと直接通信することも、アダプターを使用して通信することもできます-
- アプリケーションアダプターを使用した通信
- テクニカルアダプターを使用した通信
- 業界標準のアダプターを使用した通信
- トランザクションアダプタを使用した通信
- プロキシを使用した直接通信