CDN快取命中率分析
在CDN快取的內容可減少網站使用者所經歷的延遲,這些使用者不需要等待請求回到Apache/Dispatcher或AEM發佈。 有鑑於此,建議您最佳化CDN快取命中率,以最大化可在CDN快取的內容量。
瞭解如何分析提供的AEM as a Cloud Service CDN記錄檔,並取得深入分析,例如 快取命中率,以及 MISS 和 PASS 快取型別 的 大URL,以用於最佳化目的。
CDN記錄以JSON格式提供,其中包含各種欄位,包括url
、cache
。 如需詳細資訊,請參閱CDN記錄格式。 cache
欄位提供快取 的 狀態相關資訊,其可能值為HIT、MISS或PASS。 讓我們檢視可能值的詳細資訊。
可能的值的狀態
在此教學課程中,AEM WKND專案已部署至AEM as a Cloud Service環境,並使用Apache JMeter觸發小型效能測試。
本教學課程的結構化會引導您完成以下程式:
- 透過Cloud Manager下載CDN記錄檔
- 分析這些CDN記錄時,可透過兩種方法執行:本機安裝的儀表板或遠端存取的Splunk或Jupityer Notebook (適用於授權Adobe Experience Platform的使用者)
- 最佳化CDN快取設定
下載CDN記錄
若要下載CDN記錄檔,請遵循下列步驟:
-
在my.cloudmanager.adobe.com登入Cloud Manager並選取您的組織和程式。
-
針對所需的AEMCS環境,從省略符號選單中選取 下載記錄檔。
{width="500" modal="regular"}
-
在 下載記錄檔 對話方塊中,從下拉式功能表選取 Publish 服務,然後按一下 CDN 列旁的下載圖示。
{width="500" modal="regular"}
如果下載的記錄檔是來自 today,則副檔名為.log
,否則對於過去的記錄檔,副檔名為.log.gz
。
分析下載的CDN記錄檔
若要獲得如快取命中率,以及MISS和PASS快取型別的前URL等深入分析,請分析下載的CDN記錄檔。 這些見解有助於最佳化CDN快取設定並增強網站效能。
若要分析CDN記錄,本教學課程提供三個選項:
- Elasticsearch、Logstash和Kibana (ELK): ELK儀表板工具可安裝在本機。
- Splunk: Splunk儀表板工具需要存取Splunk以及已啟用AEMCS記錄檔轉送才能擷取CDN記錄。
- Jupyter Notebook:已授權Adobe Experience Platform的客戶,可透過Adobe Experience Platform從遠端存取它,不需安裝額外的軟體。
選項1:使用ELK儀表板工具
ELK棧疊是一組工具,可提供可擴充的解決方案,以搜尋、分析和視覺化資料。 它包含Elasticsearch、Logstash和Kibana。
若要識別金鑰詳細資料,請使用AEMCS-CDN-Log-Analysis-Tooling專案。 此專案提供ELK棧疊的Docker容器和預先設定的Kibana儀表板,以分析CDN記錄。
-
按照如何設定ELK Docker容器中的步驟操作,並確定匯入 CDN快取命中率 Kibana儀表板。
-
若要識別CDN快取命中率和前幾個URL,請執行以下步驟:
-
複製下載的CDN記錄檔於特定環境的記錄檔資料夾中,例如
ELK/logs/stage
。 -
按一下左上角的 導覽功能表> Analytics >控制面板> CDN快取命中率,開啟 CDN快取命中率 控制面板。
{width="500" modal="regular"}
-
從右上角選取所需的時間範圍。
{width="500" modal="regular"}
-
CDN快取命中率 儀表板不言自明。
-
請求分析總數 區段會顯示下列詳細資料:
- 依據快取型別的快取比率
- 依快取型別區分的快取計數
{width="500" modal="regular"}
-
依要求或MIME型別的分析 會顯示下列詳細資料:
- 依據快取型別的快取比率
- 依快取型別區分的快取計數
- 主要遺漏和通過URL
{width="500" modal="regular"}
-
依環境名稱或程式ID篩選
若要依環境名稱篩選擷取的記錄,請遵循以下步驟:
-
在CDN快取點選率儀表板中,按一下 新增篩選器 圖示。
{width="500" modal="regular"}
-
在 新增篩選器 強制回應視窗中,從下拉式功能表中選取
aem_env_name.keyword
欄位,並為下一個欄位選取is
運運算元和所需的環境名稱,最後按一下 新增篩選器。{width="500" modal="regular"}
依主機名稱篩選
若要依主機名稱篩選擷取的記錄,請遵循以下步驟:
-
在CDN快取點選率儀表板中,按一下 新增篩選器 圖示。
{width="500" modal="regular"}
-
在 新增篩選器 強制回應視窗中,從下拉式功能表中選取
host.keyword
欄位,並為下一個欄位選取is
運運算元和所需的主機名稱,最後按一下 新增篩選器。{width="500" modal="regular"}
同樣地,根據分析需求將更多篩選器新增到儀表板。
選項2:使用Splunk圖示板工具
Splunk是一種常用的記錄分析工具,可協助彙總、分析記錄及建立視覺效果,以進行監控和疑難排解。
若要識別金鑰詳細資料,請使用AEMCS-CDN-Log-Analysis-Tooling專案。 此專案提供Splunk控制面板以分析CDN記錄。
-
遵循AEMCS CDN記錄分析🔗的Splunk儀表板的步驟並確保匯入 CDN快取命中率 Splunk儀表板。
-
如有需要,請更新Splunk儀表板中的 索引、Source型別和其他 篩選器值。
{width="500" modal="regular"}
選項3:使用Jupyter Notebook
如果使用者不想在本機安裝軟體(亦即上節的ELK儀表板工具),有另一個選項,但需要Adobe Experience Platform的授權。
Jupyter Notebook是開放原始碼的Web應用程式,可讓您建立包含程式碼、文字和視覺效果的檔案。 它用於資料轉換、視覺化和統計模型製作。 它可以作為Adobe Experience Platform🔗的一部分從遠端存取。
下載互動式Python筆記本檔案
首先,下載AEM-as-a-CloudService - CDN記錄分析 — Jupyter Notebook檔案,這有助於進行CDN記錄分析。 這份「互動式Python筆記本」檔案內容不言自明,但各節的關鍵重點為:
- 安裝其他資料庫:安裝
termcolor
和tabulate
Python資料庫。 - 載入CDN記錄檔:使用
log_file
變數值載入CDN記錄檔;請確定更新其值。 它也會將此CDN記錄檔轉換為Pandas DataFrame。 - 執行分析:第一個程式碼區塊是 顯示總計、HTML、JS/CSS和影像要求的分析結果;它提供快取命中率百分比、長條圖和圓餅圖。
第二個程式碼區塊是HTML、JS/CSS和影像_的_前5個遺漏和傳遞要求URL;它以表格格式顯示URL及其計數。
執行Jupyter Notebook
接下來,請依照下列步驟在Adobe Experience Platform中執行Jupyter Notebook:
-
登入Adobe Experience Cloud,在首頁> 快速存取 區段>按一下 Experience Platform 中
{width="500" modal="regular"}
-
在Adobe Experience Platform首頁>資料科學區段>中,按一下 Notebooks 功能表專案。 若要啟動Jupyter Notebooks環境,請按一下 JupyterLab 標籤。
{width="500" modal="regular"}
-
在JupyterLab功能表中,使用 上傳檔案 圖示,上傳下載的CDN記錄檔和
aemcs_cdn_logs_analysis.ipynb
檔案。{width="500" modal="regular"}
-
按兩下以開啟
aemcs_cdn_logs_analysis.ipynb
檔案。 -
在筆記本的 載入CDN記錄檔 區段中,更新
log_file
值。{width="500" modal="regular"}
-
若要執行選取的儲存格並前進,請按一下 播放 圖示。
{width="500" modal="regular"}
-
執行Total、Analysis、JS/CSS和Image Requests 程式碼儲存格的 顯示HTML結果後,輸出會顯示快取命中率百分比、長條圖和圓餅圖。
{width="500" modal="regular"}
-
執行HTML、JS/CSS和影像 程式碼儲存格的 前5名遺漏和通過要求URL後,輸出會顯示前5名遺漏和通過要求URL。
{width="500" modal="regular"}
您可以增強Jupyter Notebook,根據您的需求分析CDN記錄。
最佳化CDN快取設定
分析CDN記錄後,您可以最佳化CDN快取設定以改善網站效能。 AEM最佳實務是快取命中率為90%或更高。
如需詳細資訊,請參閱最佳化CDN快取設定。
AEM WKND專案具有參考CDN設定,如需詳細資訊,請參閱wknd.vhost
檔案中的CDN設定。