阿里雲內容分發網路CDN(Content Delivery Network)和Function Compute無縫整合,您可以編寫函數對CDN事件進行自訂處理。當CDN系統捕獲到指定類型的、滿足過濾條件的事件後,通過CDN事件觸發程序觸發函數執行。
背景資訊
阿里雲CDN是建立並覆蓋在承載網之上、由分布在不同地區的邊緣節點伺服器群組成的分布式網路。阿里雲CDN可以替代傳統以Web Server為中心的資料轉送模式,將來源站點資源緩衝到阿里雲全國各地的Edge Server,供您就近快速擷取,提升使用者體驗,降低來源站點壓力。在Function Compute中通過配置內容分發網路事件觸發程序(以下簡稱“CDN事件觸發程序”)整合CDN服務可以實現您對CDN的各類事件進行自訂處理。例如,您可以設定函數和對應的CDN觸發器來處理www.taobao.com網域名稱下的資源重新整理事件,當該網域名稱下有資源重新整理事件時,CDN事件觸發程序會自動觸發函數執行。
使用情境
CDN事件觸發程序可以實現Function Compute與CDN服務的整合,整合的使用情境如下:
CDN在預熱(CachedObjectsPushed)和重新整理(CachedObjectsRefreshed)使用者資料後,通過觸發器執行函數。使用者可以及時得知資源預熱重新整理的狀態並進行下一步處理,避免不斷輪詢列表查詢最新狀態。
記錄檔產生後(LogFileCreated),通過觸發器執行函數處理日誌。您不需要長時間等待日誌,可以及時轉存或處理日誌。
當某加速網域名稱被停用(CdnDomainStopped)或者被啟用(CdnDomainStarted),通過觸發器執行函數及時作出相應的處理。
CDN事件定義
當CDN系統捕獲到相關事件後,會將事件資訊編碼為JSON字串,傳遞給函數進行處理。CDN事件觸發程序當前支援的事件及版本如下表所示。
事件名稱 | 事件版本 | 過濾參數 | 參考文檔 |
CachedObjectsRefreshed | 1.0.0 | domain | |
CachedObjectsBlocked | 1.0.0 | domain | 封裝CDN節點上指定URL 說明 如果需要使用該介面,請提交工單聯絡CDN產品開通介面白名單。 |
CachedObjectsPushed | 1.0.0 | domain | |
LogFileCreated | 1.0.0 | domain | |
CdnDomainStarted | 1.0.0 | domain | |
CdnDomainStopped | 1.0.0 | domain | |
CdnDomainAdded | 1.0.0 | domain | |
CdnDomainDeleted | 1.0.0 | domain |