效能樹 performance-tree

CAUTION
AEM 6.4已結束延伸支援,本檔案不再更新。 如需詳細資訊,請參閱 技術支援期. 尋找支援的版本 此處.

範圍 scope

下圖旨在提供疑難排解效能問題所需採取步驟的指引。 分成5個區段,方便閱讀。

圖表中的每個步驟都會連結至檔案資源或建議。

先決條件和假設 prerequisites-and-assumptions

假設是在指定頁面(AEM主控台或網頁)上觀察到效能問題,且可一致地重新產生。 在開始調查之前,必須具備測試或監控效能的方法。

分析從步驟0開始。 目標是要判斷哪個實體(Dispatcher、外部主機或AEM)要負責效能問題,然後判斷應該調查哪個區域(伺服器或網路)。

區段 1 section

chlimage_1-103

區段 2 section-1

chlimage_1-104

區段 3 section-2

chlimage_1-105

區段 4 section-3

chlimage_1-106

區段 5 section-4

chlimage_1-107

步驟
標題
資源
步驟 0
分析請求流程

您可以在瀏覽器中使用標準HTTP請求分析來分析請求流程。 如需如何在Chrome上執行此動作的詳細資訊,請參閱:

https://developers.google.com/web/tools/chrome-devtools/profile/network-performance/resource-loadinghttps://developers.google.com/web/tools/chrome-devtools/profile/network-performance/understanding-resource-timing

步驟 2
請求是否來自外部主機?
您可以在瀏覽器中使用標準HTTP請求分析來分析請求流程。 請參閱上述連結,了解如何在Chrome上執行此作業。
步驟 3
是否可快取請求?
如需可快取請求和一般Dispatcher效能最佳化建議的詳細資訊,請參閱 Dispatcher效能最佳化.
步驟 4
是否來自Dispatcher的請求?
檢查 Dispatcher除錯檔案 來查看請求是否已正確快取。
步驟 5
Dispatcher是否嘗試透過AEM驗證每個請求?
檢查Dispatcher是否傳送 HEAD 傳送快取資源前,向AEM要求驗證。 您可以尋找 HEAD AEM中的請求 access.log. 如需詳細資訊,請參閱 記錄.
步驟 6
Dispatcher的地理位置是否與使用者相距較遠?
將Dispatcher移近使用者。
步驟 7
Dispatcher的網路層是否正常?
調查網路層的飽和和延遲問題。
步驟 8
慢速可透過本機執行個體重現嗎?
使用 艱難的一天 從生產實例中複製「真實世界」條件。 如果對於您的開發環境而言,這並不現實,請務必在不同網路內容中測試生產執行個體(或相同的預備執行個體)。
步驟 9
伺服器的地理位置是否與用戶相距甚遠?
將伺服器移近使用者。
步驟10和29
調查網路層

調查網路層的飽和和延遲問題。

若為製作層級,建議不要超過100毫秒。

如需效能最佳化提示的詳細資訊,請參閱 本頁.

步驟 11
將伺服器移得更近,或為每個區域添加一個
步驟 12
疑難排解AEM伺服器
如需詳細資訊,請查看圖表中的下列子步驟。
步驟 13
檢查硬體需求
查看 硬體調整指南.
步驟 14
檢查效能問題的常見原因
步驟 15
尋找慢速請求

您可以分析 request.logrlog.jar.

有關使用rlog.jar的詳細資訊,請參見本頁。

請參閱 使用rlog.jar尋找持續時間較長的請求.

步驟 16
設定檔伺服器
如需可搭配AEM使用之分析工具的相關資訊,請參閱 監控和分析效能的工具.
步驟 17
在分析中查找慢速方法
步驟 18
分析的常見情況
請參閱 分析特定方案 在「效能最佳化」區段中。
步驟 19
100% CPU
https://helpx.adobe.com/tw/experience-manager/6-3/sites-deploying/monitoring-and-maintaining.html#MonitoringPerformance
步驟 20
記憶體不足
  1. 記憶體不足
  2. 我的應用程式擲回記憶體不足錯誤
  3. 在Helpx上分析記憶體問題。
步驟 21
磁碟I/O
請參閱 磁碟I/O 一節。
步驟22和22.1
快取比
請參閱 計算Dispatcher快取比率.
步驟 23
慢速查詢
查詢和建立索引的最佳實務
步驟 24
存放庫調整
步驟 25
執行中的工作流程
步驟 26
MSM基礎架構
多網站管理員最佳作法
步驟 27
資產調整
  1. Assets同步服務
  2. 多個DAM例項
  3. 效能調整提示文章 此處此處.
步驟 28
非結案工作階段
檢查未關閉的JCR會話
步驟 30
將Dispatcher移得更近(每個「地區」新增一個?)
步驟 31
在Dispatcher前面使用CDN
搭配 CDN 使用 Dispatcher
步驟 32
使用Dispatcher層級的工作階段管理來卸載AEM伺服器
啟用安全會話
步驟 33
讓請求可快取
  1. 一般Dispatcher設定
  2. 設定Dispatcher快取

如何提高快取率;讓請求可快取(Dispatcher最佳作法)

此外,請考量下列設定,以最佳化快取設定

  1. 為非GET的HTTP請求設定無快取規則
  2. 將查詢字串設定為不可快取
  3. 請勿快取副檔名遺失的URL
  4. 快取驗證標題(自Dispatcher 4.1.10版起可能)
步驟 34
升級Dispatcher版本

您可以在以下位置下載最新的Dispatcher版本:

追蹤連結

步驟 35
設定Dispatcher
設定Dispatcher
步驟 36
檢查快取失效
步驟37和38
延遲載入
請參閱AEM Web效能的Gem課程。
步驟 39
使用預連接以減少連接開銷
見上文所述的Gem會議。 此外,W3c上的其他檔案也會預先連線: https://www.w3.org/TR/resource-hints/#dfn-preconnect
步驟40和41
外部主機延遲和回應時間
調查外部主機的延遲和回應時間。
步驟45
和47
使用HTTP/2
有關步驟37、38和39,請參見Gem會議。 此外,請查看 關於HTTP/2支援的論壇文章。
步驟 49
縮減裝載大小
啟用Gzip縮小影像大小.
步驟42和43
保存

Keep-Alive 標題是否存在於重新使用連接的不同請求中? 否則,這表示每個請求都會導致另一個連接建立,這會帶來不必要的開銷。 (瀏覽器中的標準HTTP要求分析)

您可以檢查 代理伺服器工具 來檢查「保持活動」的連接。

步驟 44
提出了多少個請求?
在瀏覽器中執行標準HTTP要求分析。
步驟 46
減少請求數
  1. 串連資源(影像、CSS精靈、JSON等)
  2. Clientlibs內嵌:
    1. 建立客戶端庫資料夾 — 請參閱使用內嵌來將請求減至最少標題
步驟 48
有效負載的大小是多少?
瀏覽器中的標準HTTP要求分析
步驟50和51
JS程式碼封鎖
AEM Web效能
recommendation-more-help
6a71a83d-c2e0-4ce7-a6aa-899aa3885b56