下圖旨在提供疑難排解效能問題所需採取步驟的指引。 分成5個區段,方便閱讀。
圖表中的每個步驟都會連結至檔案資源或建議。
假設是在指定頁面(AEM主控台或網頁)上觀察到效能問題,且可一致地重新產生。 在開始調查之前,必須具備測試或監控效能的方法。
分析從步驟0開始。 目標是要判斷哪個實體(Dispatcher、外部主機或AEM)要負責效能問題,然後判斷應該調查哪個區域(伺服器或網路)。
步驟 | 標題 | 資源 |
步驟 0 | 分析請求流程 | 您可以在瀏覽器中使用標準HTTP請求分析來分析請求流程。 如需如何在Chrome上執行此動作的詳細資訊,請參閱: https://developers.google.com/web/tools/chrome-devtools/profile/network-performance/resource-loading |
步驟 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 | 尋找慢速請求 | 您可以分析 有關使用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 | 記憶體不足 | |
步驟 21 | 磁碟I/O | 請參閱 磁碟I/O 一節。 |
步驟22和22.1 | 快取比 | 請參閱 計算Dispatcher快取比率. |
步驟 23 | 慢速查詢 | 查詢和建立索引的最佳實務 |
步驟 24 | 存放庫調整 | |
步驟 25 | 執行中的工作流程 |
|
步驟 26 | MSM基礎架構 | |
步驟 27 | 資產調整 |
|
步驟 28 | 非結案工作階段 |
|
步驟 30 | 將Dispatcher移得更近(每個「地區」新增一個?) | |
步驟 31 | 在Dispatcher前面使用CDN | 搭配 CDN 使用 Dispatcher |
步驟 32 | 使用Dispatcher層級的工作階段管理來卸載AEM伺服器 | |
步驟 33 | 讓請求可快取 |
如何提高快取率;讓請求可快取(Dispatcher最佳作法) 此外,請考量下列設定,以最佳化快取設定
|
步驟 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 | 保存 | 是 您可以檢查 代理伺服器工具 來檢查「保持活動」的連接。 |
步驟 44 | 提出了多少個請求? | 在瀏覽器中執行標準HTTP要求分析。 |
步驟 46 | 減少請求數 |
|
步驟 48 | 有效負載的大小是多少? | 瀏覽器中的標準HTTP要求分析 |
步驟50和51 | JS程式碼封鎖 | https://experienceleague.adobe.com/docs/experience-manager-gems-events/gems/gems2016/aem-web-performance.html?lang=zh-Hant |