パイプライン プロセッサの同時実行
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
非同期モードを有効にすると、複数のパイプライン プロセッサを同時に実行できます。これにより、各プロセッサを個別のタスクで呼び出すことができます。これにより、Sitecoreを最初から起動する際のパフォーマンスを向上させることができます。
この機能は試験的なものであり、本番環境では使用しないでください。機能を使用する前に、特定の環境と構成で機能を徹底的にテストすることを強くお勧めします。この機能は、主にテストインストールでの動作について開発者コミュニティからフィードバックを得るために実装されています。
非同期モード機能は、Initializeパイプラインでのみ使用する必要があります。このパイプラインの複数のプロセッサは個別に呼び出すことができるため、同時に実行するのに適しています。
非同期モード機能は、カスタム プロセッサおよびカスタム構成で使用すると動作が予測できないため、既定では無効になっています。
非同期プロセッサー・モードの使用可能化
この機能を有効にするには、Initializeパイプライン プロセッサにRunMode属性を追加します。この属性が存在しない場合、プロセッサはデフォルト値のSyncを使用します。
RunMode属性は、Sitecore.Experimental.Async.Initialization.Pipeline.config.exampleファイルなどに示すように、別のパッチ ファイルに追加することを強くお勧めします。パッチファイルを使用すると、非同期モードをすばやく簡単に有効または無効にできます。
この機能を有効にすると、次の方法で各プロセッサを呼び出すことができます。
|
モード |
形容 |
|---|---|
|
同期 |
デフォルトモード。プロセッサはメインスレッドで実行されます。 |
|
非同期終了 |
パイプラインは、別のタスクでプロセッサを呼び出します。パイプラインが完了すると、タスクは終了します。 |
|
非同期 |
パイプラインは、別のタスクでプロセッサを呼び出します。タスクは、次のWaitAsyncプロセッサが呼び出されたとき、またはパイプラインが完了したときに終了します。 |
|
WaitAsync |
パイプラインは、現在のプロセッサが実行される前に開始されたすべての非同期プロセッサを待機してから、メイン スレッドで現在のプロセッサを呼び出します。 |
インストールのセットアップ、構成、および負荷は、プロセッサに最適なRunMode設定に影響します。したがって、この機能の設定方法について一般的な推奨事項を示すことはできません。
パイプラインの各プロセッサは、構成で指定した順序で実行されます。パイプラインが別のタスクでプロセッサを呼び出すと、パイプラインによってタスクが自動的に作成されます。
パイプライン引数はスレッドセーフではないため、同じパイプライン引数データを共有および変更するすべてのプロセッサをSyncモードで実行する必要があります。