A.1.4 Sagaパフォーマンス
Sagaアプリケーションのパフォーマンスとスループットは、Sagaフレームワークと最適なレベルで実行されるAQに依存します。データベース・システム(PDB)は、AQの伝播と通知を容易にするために、適切なJOB_QUEUE_PROCESSES
で構成する必要があります。Javaアプリケーションは十分なプロデューサとコンシューマを構成する必要があります。Saga注釈の「構成」の項の、numListeners
とnumPublishers
を参照してください。
また、次のパラメータを変更することで、より高いパフォーマンスを実現できます。
queue_partitions
スループットを高めるために、Sagaエンティティは複数のキュー・パーティションをデプロイできます。デフォルトでは、Sagaエンティティは1つのキュー・パーティションを使用します。複数のキュー・パーティションによってSagaフレームワークの並列度が向上します。トポロジ内のすべてのエンティティに、一致する数のキュー・パーティションが構成されている必要があります。
関連項目:
SYS.DBMS_SAGA_ADM
パッケージAPIの詳細な説明は、DBMS_SAGA_ADMを参照してください。
listener_count
デフォルトでは、SagaフレームワークはAQメッセージ通知機能を使用して、コーディネータのINキューのメッセージ・トラフィックを処理します。高負荷の場合、コーディネータのINキューがパフォーマンスのボトルネックになることがあります。DBMS_SAGA_ADM.ADD_COORDINATOR()
プロシージャのlistener_count
パラメータは、1より大きい数値に変更できます。これにより、Sagaメッセージ・リスナーは、AQ通知を使用するかわりに、SagaコーディネータのINキューでメッセージを処理できるようになります。Sagaメッセージ・リスナーは、AQメッセージ通知のオーバーヘッドの一部を排除し、Sagaコーディネータのインバウンド・メッセージ・トラフィックを処理するための効率的なメカニズムを提供します。
関連項目:
SYS.DBMS_SAGA_ADM
パッケージAPIの詳細な説明は、DBMS_SAGA_ADMを参照してください。