プログラミング モデルは、特定のソリューションの目標に応じて、ホスト アプリケーションと構成要件にアクセスして統合するために使用される方法を決定します。 TI を実装する場合、またはメインフレームおよびミッドレンジ システム用のコネクタを使用して Azure Logic Apps でワークフローを作成する場合は、サポートされているプログラミング モデルに合わせて既存のメインフレーム トランザクション プログラム (TP) を変更する必要がある場合があります。 具体的には、次のシナリオでこれが必要になる場合があります。
TP では、単純な要求/応答応答は想定されません。
CICS TP には、ビジネス ロジックと同じ TP にターミナル処理ロジックが埋め込まれています。
この種類の TP は、2 つの別個の TP として再構築する必要があります。 メインフレーム コンピューターに既に TP として存在するビジネス ロジックへのアクセス。 この関数を使用することも、COM 側でメソッドを作成し、メインフレーム コンピューターに必要なサーバー TP を作成することもできます。 TI は、標準のデータ・アクセス方式よりも、VSAM データ・セットに保管されているデータなど、一部のタイプのデータにアクセスする場合に適している可能性があるため、これは引き続き有効なオプションです。
TI で提供されているプログラミング モデルのいずれかを使用してトランザクション アクセスを実装できるように、組織のビジネス要件を慎重に分析する必要があります。 TI では、次の表に示すプログラミング モデルがサポートされています。このモデルには、組織に適したプログラミング モデルを選択するときに考慮する必要がある要素の一部が示されています。
- ネットワーク プロトコル
- ホストに送信できるメッセージまたはデータの最大サイズ
- ホスト アプリケーションで 2 フェーズ コミット トランザクションを使用する必要があるかどうか
- Link プログラムをサポートするために独自の通信プロトコルを記述する必要があるかどうか
- サーバーがクライアントからサーバーへのコンテキスト (永続的な接続とも呼ばれます) を維持する機能を持たせたいかどうか
- 特定のモデルに固有のその他の要件
次の表は、プログラミング モデル間の類似点と相違点をまとめたものです。
プログラミング モデル | ネットワーク プロトコル | メッセージまたはデータの最大サイズ | 2フェーズコミットをサポート | 独自の通信プロトコルを記述する | 永続的な接続をサポートします | Azure Logic Apps のサポート | その他の要件 |
---|---|---|---|---|---|---|---|
TCP トランザクション要求メッセージ リンク | TCP/IP | 32 KB | いいえ | いいえ (サンプル コードを参照) | イエス | イエス | - mscmtics.cbl サンプル アプリケーションを参照してください。 - 1:サーバー アプリケーションとポートの間の多くの関係 |
TCP 拡張リスナー メッセージ リンク | TCP/IP | 32 KB | いいえ | いいえ (サンプル コードを参照) | イエス | イエス | - mscmtics.cbl サンプル アプリケーションを参照してください。 - サーバー アプリケーションとポートの間の 1:1 の関係 |
TCP トランザクション要求メッセージ ユーザー データ | TCP/IP | 無制限 | いいえ | はい (サーバー TP は、TCP/IP 経由のすべてのソケット呼び出しを処理するようにコーディングされています)。 |
イエス | イエス | 1:サーバー アプリケーションとポートの間の多くの関係 |
TCP 拡張リスナーのメッセージユーザーデータ | TCP/IP | 無制限 | いいえ | はい (サーバー TP は、TCP/IP 経由のすべてのソケット呼び出しを処理するようにコーディングされています)。 |
イエス | イエス | サーバー アプリケーションとポートの間の 1:1 の関係 |
IMS Connect | TCP/IP | 10 MB | いいえ | いいえ | いいえ | イエス | - (TIからホストへの) 範囲無制限のレコードセットは禁止されています。 TI は、バインドされていないレコードセットをホストに送信できません。 ホストから TI に戻ってくるレコードセットのみがサポートされます。 - IBM 提供のHWSIMSO0およびHWSIMSO0出口ルーチンに依存 |
IBM i 分散プログラム呼び出し | TCP/IP | 32 KB | いいえ | いいえ | イエス | いいえ | |
CICS LU6.2 リンク | LU6.2 | 32 KB | イエス | いいえ | いいえ | いいえ | - サーバー TP は、COMMAREA を使用するように既にコーディングされています。
注: CICS Link は、複数の送受信コマンドをサポートしていません。 そのため、可変長レコードセットはサポートされていませんが、固定サイズのレコードセットはサポートされています。 - CICS TP には、APPC 動詞の発行を直接処理するために必要なロジックは含まれませんが、代わりに CICS ミラー トランザクションに依存する必要があります。 - TP は、単純な送受信シーケンス用にコード化されています。 |
CICS LU6.2 ユーザー データ | LU6.2 | 無制限 | イエス | はい (サーバー TP は、すべての APPC および同期レベル 2 の通信を処理するようにコーディングされています)。 |
イエス | いいえ | - 既存の TP には、独自の APPC と同期レベル 2 の通信を管理するために必要な適切なコードが含まれています。 - 複数の送受信コマンドを使用できます。 |
IMS LU6.2 ユーザー・データ | LU6.2 | 無制限 | イエス | いいえ | いいえ | いいえ | - 各サーバー TP には、LU6.2 プロトコルを使用してすべてのデータ通信を処理するために必要な埋め込みコードが必要です。 |
HTTP リンク | HTTP | 32 KB | いいえ | いいえ | いいえ (サンプル コードを参照) | イエス | - MSHMIRS サンプル プログラムを参照してください - 1:サーバー アプリケーションとポートの間の多くの関係 |
HTTP ユーザー データ | HTTP | 無制限 | いいえ | いいえ | はい(HTTPGetBalanceUserData.cbl のサンプル コードに基づく) | イエス | - GETBALUD サンプル プログラムを参照してください - 1:サーバー アプリケーションとポートの間の多くの関係 |
特定のプログラミング モデルを実装する場合は、メインフレームまたは IBM i コンピューターに適切なソフトウェアをインストールして構成する必要があります。 組織に適したプログラミング モデルを選択する場合は、現在のホスト構成が最小要件とどの程度一致しているかを評価できます。 次の表は、各プログラミング モデルの最小ソフトウェア要件と構成要件をまとめたものです。
プログラミング モデル | インストールと構成の要件 |
---|---|
TCP トランザクション要求メッセージ リンク | - IBM z/OS 2.3 以降 - IBM CICS 5.2 以降 - リスナー TP(CICS TCP/IP に含まれ、構成および開始済み) - z/OS バージョン 2.3 以降の TCP/IP - TP が構成された、少なくとも 1 つの CICS 領域が、VTAM の APPL ステートメントで定義されています。 |
TCP 拡張リスナー メッセージ リンク | - IBM z/OS 2.3 以降 - IBM CICS コンポーネント サービス - リスナー TP(CICS TCP/IP に含まれ、構成および開始済み) - z/OS バージョン 2.3 以降の TCP/IP - TP が構成されている、少なくとも 1 つの CICS 領域が、VTAM の APPL ステートメントで定義されている |
TCP トランザクション要求メッセージ ユーザー データ | - IBM z/OS 2.3 以降 - IBM CICS 5.2 以降 - リスナー TP(CICS TCP/IP に含まれ、構成および開始済み) - z/OS バージョン 2.3 以降の TCP/IP - TP が設定された、VTAM の APPL ステートメントで定義されている少なくとも 1 つの CICS 領域 |
TCP 拡張リスナーのメッセージユーザーデータ | - IBM z/OS 2.3 以降 - IBM CICS コンポーネント サービス - リスナー TP(CICS TCP/IP に含まれ、構成および開始済み) - z/OS バージョン 2.3 以降の TCP/IP - TP が構成されている、少なくとも 1 つの CICS 領域が、VTAM 内の APPL ステートメントで定義されている |
IMS Connect | - IBM z/OS 2.3 以降 - IBM IMS 13.1 以降 - IMS TCP/IP に含まれるリスナープログラム(TP) - z/OS 2.3 以降の TCP/IP - IMS TCP/IP |
IBM i 分散プログラム呼び出し | IBM IBM i リリース 4 バージョン 1 以降 |
CICS LU6.2 リンク | - IBM z/OS 2.3 以降 - IBM CICS バージョン 5.2 以降 - CICS バージョン 5.2 以降に含まれる CICS ミラー・トランザクション - VTAM - VTAM のアプリケーション (APPL) ステートメント内で TP が構成されている CICS 領域が少なくとも 1 つ定義されていること - システム ネットワーク アーキテクチャ (SNA) 接続を確立するために必要な適切な VTAM PU、LU、およびモード定義 |
CICS LU6.2 ユーザー データ | - IBM z/OS 2.3 以降 - IBM CICS 5.2 以降 - VTAM - TP が構成されている、少なくとも 1 つの CICS 領域が、VTAM の APPL ステートメントで定義されている - SNA 接続を確立するために必要な適切な VTAM PU、LU、およびモード定義 |
IMS LU6.2 ユーザー・データ | - IBM z/OS 2.3 以降 - MVS/APPC はメインフレーム コンピューターにインストールする必要があります。 MVS/APPC はオペレーティング・システムに組み込まれています。 - IBM IMS 13.1 以降 - 2PC プロトコルを使用している場合は IBM IMS 13.1 以降 (同期ポイント レベル 2) - 2PC プロトコル (同期ポイント レベル 2) を使用している場合は、IBM Recovery Resource Services (RRS)。 さらに、適切な IMS 制御領域は、VTAM の APPL ステートメントで定義する必要があります。 |