0

アプリケーション エンジンで非同期に Integration Broker を介して PeopleSoft 経由でメッセージを発行しようとしているデータ アップロードを処理しようとしています。要点は、複数のメッセージを送信し、それらを同じノードで消費できるようにすることです。メッセージを送信する前に、データをテーブル (T1 など) に保存して、すべてのフィールド値をアップロード ファイルに保存します。

消費している間、各メッセージをコンポーネント インターフェイスに公開しようとしていますが、例外は同じテーブル T1 に記録されます。トランザクションごとに、テーブル フィールドにフラグを立てているとしましょう (Processed_flag ='Y' など)。

すべての非同期メッセージが完了するまで待機できるメカニズムが必要です。T1 テーブルをチェックすることを考えています。T1 テーブルに Processed_flag が「N」の行がある場合は、スレッドをさらに長くスリープさせます。すべてのメッセージが処理されていない間は、スリープ状態のままにして、アプリケーション エンジンを完了させません。

私が得られる唯一の利点は、一度に複数のインスタンスを待つ必要がないこと、または同期呼び出しを行う必要がないことです。全体のアイデアは、異なるトランザクションでコンポーネントを使用することです (あたかも 100 人によって使用されたかのように -> 100 トランザクション)。

これらの 100 件のトランザクションが完了しない限り、T1 テーブルに何が起こったか、何が起こったかの記録が保持されていることを確認します。何か問題がある場合は、CI によってキャッチされた例外をログに記録できます。

このアプローチに関するコメントをいただければ幸いです。前もって感謝します!

4

1 に答える 1