AEM Forms(および以前のバージョン)では、非同期に操作を実行するために JMS キューを使用していました。AEM Forms では、JMS キューはワークマネージャーに置き換えられました。ここでは、ワークマネージャーに関する背景について、およびワークマネージャーのスロットリングオプションを設定する場合の手順について説明します。
AEM Forms では、サービスによって実行される操作には、有効期間が短い(同期)操作または有効期間が長い(非同期)操作があります。有効期間が短い操作は、呼び出された同じスレッドで同期して完了します。また、応答が完了してから続行します。
有効期間が長い操作は、複数のシステムにまたがったり、さらには組織を越えて展開したりします。例えば、複数の自動タスクおよび手動タスクを統合する大規模なソリューションの一部として、顧客がローン申し込みフォームに入力して送信する場合などです。このような操作は応答を待つ間続きます。有効期間が長い操作は、基礎となる作業を非同期に実行し、本来であれば完了まで待つ必要があったリソースの実行を可能にします。有効期間が短い操作とは異なり、有効期間が長い操作が呼び出されると、ワークマネージャーはその完了を考慮しません。システムが同じサービス上の別の操作を要求したり、ユーザーがフォームを送信したりするなど、別の外部のトリガーによって操作の完了が発生します。
AEM Forms(および以前のバージョン)では、非同期に操作を実行するために JMS キューを使用していました。AEM Forms では、ワークマネージャーを使用して、非同期操作をスケジュールし、管理されたスレッドを介して操作を実行します。
非同期操作は次の方法で処理されます。
AEM forms 管理者は、ヘルスモニターを使用してワークマネージャーの統計情報(キュー内の作業項目数やそのステータスなど)を調べることができます。また、ヘルスモニターは、作業項目の一時停止、再開、再試行または削除にも使用できます(ワークマネージャーに関連する統計情報の表示を参照)。
ワークマネージャーのスロットリングは、使用できるメモリリソースが十分にある場合にのみ作業項目をスケジュールするように設定できます。スロットリングを設定するには、アプリケーションサーバーで次の JVM オプションを設定します。
プロパティ |
説明 |
---|---|
adobe.work-manager.queue-refill-interval |
キュー内の新しい項目をチェックするときにワークマネージャーが使用する間隔(ミリ秒)を指定します。 このオプションの値は整数です。デフォルト値は 非同期の呼び出しの量が少ない場合、この値を増やすことができます。例えば、2,000~5,000(2~5 秒)の数値まで増やすことができます。 非同期呼び出しの量が多い場合はデフォルト値で十分ですが、必要に応じて低い値を使用することもできます。この値を減らしすぎると(例えば 50 未満にすると 1 秒に 20 回のポーリング頻度になります)、システムのオーバーヘッドが大幅に増加します。 |
adobe.workmanager.debug-mode-enabled |
このオプションを デバッグモードでは、ワークマネージャーのポリシー違反およびワークマネージャーの一時停止/再開アクションに関するメッセージがログに記録されます。このオプションはトラブルシューティングの場合にのみ true に設定します。 |
adobe.workmanager.memory-control.enabled |
このオプションを |
adobe.workmanager.memory-control.high-limit |
ワークマネージャーが受信ジョブをスロットリング処理する前に、使用状態にすることができるメモリの最大比率を指定します。 このオプションのデフォルト値は クラスター環境で AEM Forms を実行している場合、クラスターのノードごとにメモリ制御の制限設定を変えることもできます。例えば、インタラクティブな作業用にロードバランサーでプログラミングしたノード A と B に対して低い上限を設定し、ロードバランサーからは使用せず、非同期作業に予約されているノード C と D には高い上限を設定することができます。 |
adobe.workmanager.memory-control.low-limit |
ワークマネージャーが受信ジョブのスロットリングを停止する前に、使用状態にすることができるメモリの最大比率を指定します。 このオプションのデフォルト値は |
Dadobe.workmanager.allocate.max-batch-size |
ワークマネージャーの最大バッチサイズを指定します。デフォルトのバッチサイズは 10 です。 タスクが終了した後もワークマネージャーのプロセスのステータスが更新されない場合は、バッチサイズを 1 に設定します。 |
JBoss への Java オプションの追加
-Dproperty=value
.WebLogic への Java オプションの追加
次のように入力して、WebLogic 管理コンソールを起動します。 https://
[ホスト名]:
[ポート] /console
(Web ブラウザー)を使用して、
WebLogic Server ドメインに対して作成したユーザー名とパスワードを入力し、「Log In」をクリックします。「Change Center」で、「Lock & Edit」をクリックします。
「Domain Structure」で、Environment/Servers をクリックし、右側のウィンドウで、管理対象サーバー名をクリックします。
次の画面で、「Configuration」タブ/「Server Start」タブをクリックします。
「Arguments」ボックスで、現在の内容の末尾に必要な引数を付加します。例えば、ヘルスモニターを無効にするには、
-Dadobe.healthmonitor.enabled=false
ヘルスモニターを無効にします。
「Save」をクリックし、「Activate Changes」をクリックします。
WebLogic 管理対象サーバーを再起動します。
WebSphere への Java オプションの追加