オンプレミスのパフォーマンス最適化に関する推奨事項 id213BD0JG0XA
データストアの設定\(必須\)
変更点は何ですか?
設定minRecordLengthの下の100 プロパティをorg.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.の値に設定します。ファイルの日付ストアとS3 データストアについて詳しくは、「AEMでのノードストアとデータストアの設定」を参照してください。6
設定するタイミング
ただし、コンテンツの移行前に行います。 この変更は、既存のシステムでも実行する必要があります。これにより、すべての新しいコンテンツがセグメントストアではなくデータストアに保存されます。
この変更の結果
DITA ファイルは、セグメントストアではなくデータストアに保存されます。 これにより、セグメントストアのサイズが推奨制限の下に保たれ、システムの応答性が向上します。
Lucene インデックスを更新\(必須\)
変更点は何ですか?/var/dxml from oak:index/luceneを除外します。
/var/dxml ノード内のコンテンツを検索しません。設定するタイミング
コンテンツを移行する前に新しいシステムでこの変更を行う場合は、oak:index/luceneの更新のみが必要です。 それ以外の場合は、コンテンツが既に移行されている既存のシステムで、oak:index/lucene,で変更を加えた後、Lucene \(完了するのに数時間かかる場合がある\)のインデックスを再構築します。
この変更の結果
この変更により、/var/dxml ノードがインデックス作成され、セグメントストアに保存されなくなります。
Java メモリ最適化\(必須\)
変更点は何ですか?
JVM開始パラメーターは、インフラストラクチャとディスクサイズに基づいて慎重に調整する必要があります。 Adobe サポートを参照して、理想的な設定にアクセスするためのヘルプを得ることをお勧めします。 ただし、次の設定を自分で試すことができます。
-
JVM ヒープのサイズを、使用可能なメモリの合計の1/4以上に設定します。 パラメーター
-Xmx<size>を使用して、ヒープ メモリ サイズを設定します。 -Xmsの値を-Xmxに設定します。 -
-XX:+HeapDumpOnOutOfMemoryErrorを有効にし、-XX:HeapDumpPath=</path/to/folder>のパスを設定します。 -
Java GC ログを次のように有効にします。
* -XX:+PrintGCDateStamps
* -verbose:gc
* -XX:+PrintGCDetails
* -XX:+PrintTenuringDistribution
* -Xloggc:</path/to/gc.log>
– 一般に、Java 11の場合はG1GC \(-XX:+UseG1GC\)を使用し、Java 8の場合はCMS \( – XX:+UseConcMarkSweepGC\)を使用します。
-
-XX:NewRatioを使用して、若い世代のメモリ サイズを制御します。 デフォルト値は2です。つまり、メモリの1/3が若い世代に使用されます。 多くのオブジェクトが素早く作成され、破棄されるため、値1を使用すると、メモリの1/2が若い世代に割り当てられます。 -
-XX:MaxTenuringThresholdを使用して、古い生成に昇格するオブジェクトの数を制御します。 オブジェクトが古い生成に昇格されるときに遅延させるには、15 \(default\)の値を使用します。
設定するタイミング
既存のシステムでこの変更を行う場合は、システムを再起動する必要があります。 新しいインストールの場合、システムを起動する前に、この変更を開始スクリプト \(.batまたは.sh\) ファイルで行う必要があります。
この変更の結果
これにより、最適なヒープサイズとGCの制御された実行が得られます。
オーサーインスタンス \(オプション\)のクライアントライブラリの縮小
変更点は何ですか?
クライアントライブラリは、オーサリングインスタンスで縮小するように設定する必要があります。 これにより、ユーザーが別の場所からシステムを閲覧しているときにダウンロードするバイト数が少なくなります。 この変更を行うには、Felix コンソールから HTML Library Manager で設定を行います。
設定するタイミング
これは、Felix コンソールまたはコードデプロイメントを使用して、実行時に実行できます。
この変更の結果
この変更により、クライアントライブラリを読み込むために転送されるバイト数が少なくなるため、オーサーインスタンスでのページの読み込み時間が短縮されます。
同時公開スレッドの設定\(ユースケースに応じて必須\)
変更点は何ですか?
この変更は、DITA-OTを使用して出力を公開し、複数の同時公開スレッドも定義されている場合に必要です。
デフォルトでは、AEM Guidesは公開スレッドをCPU+1の数に設定します。 ただし、この値は、CPUの合計数の半分\(1/2\)または3分の1の\(1/3\)に設定することをお勧めします。 これを行うには、推奨事項に従って、構成 の下に 生成プールサイズ com.adobe.fmdita.publish.manager.PublishThreadManagerImpl プロパティを設定します。
設定するタイミング
これは、Felix コンソールまたはコードデプロイメントを使用して、実行時に実行できます。
この変更の結果
この変更により、実行中のオーサーインスタンスで、すべてのリソースが公開操作に割り当てられなくなります。 これにより、制作者もシステムリソースを利用できるようになり、ユーザーエクスペリエンスが向上します。
AEM サイト出力生成用のノードのバッチサイズを設定します\(ユースケースに応じて必須\)
変更点は何ですか?
この変更は、AEM Sites出力を生成する場合に必要です。
の下のヒープ プロパティのcom.adobe.fmdita.config.ConfigManagerAEM サイトページ制限を、システムの設定に基づく数値に設定します。 このプロパティは、サイトページの生成時にコミットされるノードのバッチサイズを定義します。 例えば、CPUとヒープサイズの数が多いシステムでは、デフォルト値を500から大きい値に増やすことができます。 このプロパティに最適な値にするには、変更された値を使用して実行をテストする必要があります。
設定するタイミング
これは、Felix コンソールまたはコードデプロイメントを使用して、実行時に実行できます。
この変更の結果
ヒープ プロパティの Limit AEM Site Pagesの数が増えたことで、AEM Siteの出力生成プロセスが最適化されます。