パフォーマンスツリー performance-tree
- トピック:
- 管理
作成対象:
- 管理者
範囲 scope
以下の図は、パフォーマンスの問題をトラブルシューティングするために実行する手順のガイダンスを示しています。読みやすくするために、これは 5 つのセクションに分けられています。
図の各手順は、ドキュメントリソースまたはレコメンデーションにリンクされています。
前提条件と想定事項 prerequisites-and-assumptions
パフォーマンスの問題は特定のページ(AEM コンソールまたは Web ページ)で発生し、かつ一貫して再現可能であることを想定しています。パフォーマンスをテストまたは監視するための手段があることが、調査を始めるための前提条件となります。
分析は手順 0 から開始します。目的は、パフォーマンスの問題の原因であるエンティティ(Dispatcher、外部ホストまたは AEM)を特定し、調査する必要がある領域(サーバーまたはネットワーク)を判別することです。
セクション 1 section
セクション 2 section-1
セクション 3 section-2
セクション 4 section-3
セクション 5 section-4
参照リンク reference-links
ブラウザーで標準 HTTP 要求分析を使用して、要求フローを分析できます。Chrome でこの分析を実行する方法の詳細は、以下を参照してください。
HEAD
リクエストを AEM に送信しているかどうか確認します。AEM access.log
で HEAD
リクエストを探します。詳しくは、ログを参照してください。ネットワークレイヤーで、輻輳や遅延の問題がないかどうかを調べます。
オーサー層の場合は、遅延が 100 ミリ秒を超えないことが推奨されます。
パフォーマンスの最適化に関するヒントについて詳しくは、このページを参照してください。
request.log
を分析するか、rlog.jar
を使用すると、処理に時間のかかる要求を確認できます。
rlog.jar の使用方法について詳しくは、このページを参照してください。
rlog.jar を使用した所要時間の長い要求の検索を参照してください。
キャッシュ率を向上させるには、リクエストをキャッシュ可能にします(Dispatcher のベストプラクティス)
また、キャッシュ設定を最適化するために、以下の設定も考慮してください
- GET 以外の HTTP リクエストにキャッシュなしルールを設定する
- クエリ文字列をキャッシュ不可に設定する
- 拡張子がない URL をキャッシュしない
- 認証ヘッダーをキャッシュする(Dispatcher バージョン 4.1.10 以降で可能)
接続を再利用するために、異なる複数のリクエストに Keep-Alive
ヘッダーが存在しますか。存在しない場合は、リクエストごとに別の接続が確立され、不要なオーバーヘッドが発生します(ブラウザーでの標準 HTTP リクエスト分析)。
プロキシサーバーツールで、Keep-Alive 接続を確認できます。
- リソースの連結(画像、CSS スプライト、JSON など)
- clientlib の埋め込み
- クライアントライブラリフォルダーの作成 -「埋め込みを使用したリクエストの最小化」の見出しを参照してください