基于遍布全球的節點,DCDN提供了智能彈性的計算和存儲服務,即邊緣函數和邊緣存儲。您可以將在線服務或輕量應用直接部署至全球邊緣節點,就近處理客戶端的請求,以獲得更低的延遲。同時,您無需再運維服務器資源,Serverless將自動為您分配足夠的計算和存儲資源。
邊緣函數目前是Beta功能,僅面向部分客戶開放。如果您的DCDN日常帶寬峰值大于500 Mbps,可以填寫信息申請。申請通過后,邊緣函數菜單入口才可見。
邊緣函數
邊緣函數(EdgeRoutine,簡稱ER)是一個JavaScript代碼運行環境,運行在遍布全球的邊緣節點上。您可以將自行開發的JavaScript代碼發布至全球邊緣函數,客戶端的請求將被自動調度至距離最近的邊緣節點上,顯著降低客戶端請求的響應時間,讓您獲得低延遲的計算體驗。
開通邊緣函數服務
- 登錄DCDN控制臺。
在左側導航欄,單擊邊緣函數。
單擊 ,開通邊緣函數服務。
創建您的第一個邊緣函數
步驟一:創建和配置函數
- 登錄DCDN控制臺。
在左側導航欄,單擊邊緣函數。
如果您是第一次使用邊緣函數,請先設置子域。
在邊緣函數頁面,單擊設置子域。
在創建子域對話框中,屬于子域名稱。
說明子域相當于一個倉庫,您創建的邊緣函數均放在該倉庫下,子域設置后無法修改。
子域是每個用戶的唯一標識符,子域也將用作函數ID的一部分。
子域設置后無法更改,支持小寫英文字母、數字和中劃線,名稱長度不能小于2個字符,例如subdomain-name。
單擊確定。
在邊緣函數頁面,單擊創建函數。
參數
說明
函數名稱
請輸入函數名稱。
說明支持小寫英文、數字和中劃線,名稱長度不能小于2個字符,例如routine-name。函數名創建后無法修改。
描述
(選填)函數的描述信息。
規格
函數代碼單次執行最多使用的CPU時間(不包含等待網絡請求響應的I/O時間),RT最大值120秒,可用內存128 MB。不同規格的費用不同,默認選擇50 ms規格。更多計費信息,請參見計費說明。
單個請求可用CPU時間片:5ms
單個請求可用CPU時間片:50ms(默認)
單個請求可用CPU時間片:100ms
函數創建完成后,可單擊操作列的詳情,進入函數詳情頁進行配置。各個環境的配置相互獨立,您可以按需分別修改生產環境、測試環境和灰度環境(選配)的配置。
參數
說明
函數規格
函數代碼單次執行最多使用的CPU時間(不包含等待網絡請求響應的I/O時間),RT最大值120秒,可用內存128 MB,默認選擇50 ms規格。
單個請求可用CPU時間片:5ms
單個請求可用CPU時間片:50ms(默認)
單個請求可用CPU時間片:100ms
域名白名單
允許關聯該函數的域名。
支持填寫泛域名。
域名白名單默認為空,表示任意域名都可關聯該函數。
說明例如您設置了example.com,則表示只有example.com的請求可以觸發該函數執行,其他域名的請求將被該函數拒絕。
步驟二:域名關聯函數
函數需要域名作為入口供客戶端訪問,域名可使用CDN或DCDN加速域名。函數創建并配置完畢后,您需要將DCDN的域名關聯該邊緣函數,客戶端通過訪問域名觸發函數執行。具體以您域名所在的產品進入對應控制臺為準。
- 登錄DCDN控制臺。
- 在左側導航欄,單擊域名管理。
- 在域名管理頁面,單擊目標域名對應的配置。
在指定域名的左側導航欄,單擊邊緣函數。
在邊緣函數頁面,開啟并配置邊緣函數ID。
參數
說明
邊緣函數ID
邊緣函數ID是每個函數的唯一標識符。組成方式:函數名稱.子域。
說明在DCDN控制臺左側,單擊邊緣函數,在函數頁面您可以看到對應函數的ID。
觸發模式
訪問DCDN域名的請求將觸發邊緣函數執行,執行方式有兩種:
重定向:DCDN域名的請求將被邊緣函數完全接管。邊緣函數內的代碼邏輯由您自行開發,可直接返回結果給客戶端、通過CacheAPI讀取緩存、通過fetch請求回源等。
旁路:DCDN域名的請求僅觸發邊緣函數執行,隨后繼續執行DCDN配置并回源,適合于一些鑒權校驗或日志打點的場景。
執行異常時是否回源
是:當邊緣函數執行異常,邊緣節點將以客戶端URL的形式請求DCDN域名源站,您可以在源站實現兜底和容災機制。
否:當邊緣函數執行異常,直接返回5xx狀態碼給客戶端。
說明首次使用邊緣函數建議您將該參數設置為否,通過返回5xx狀態碼可排查使用中遇到的問題。
執行異常時,回源的請求將按請求數計費。該部分異常的回源請求一般情況下占比極低,可忽略。
步驟三:開發并調試函數
- 登錄DCDN控制臺。
在左側導航欄,單擊邊緣函數。
選擇您創建的函數,單擊詳情。
在詳情頁面,選擇代碼頁簽,即可開始使用JavaScript開發邊緣函數(默認是HelloWorld示例代碼)。
編寫完代碼后,單擊發布到測試環境。您可以選擇頁面上提供的任一測試環境IP進行Host綁定測試,調試函數代碼。
說明綁定Host的方式是修改測試機本地Host文件,加入測試IP和域名。例如添加10.10.10.10 example.com(IP替換為上圖提供的任一IP,域名替換為您關聯該函數的DCDN域名)。
步驟四:生成正式版本
代碼調試完畢后,在代碼頁簽,單擊生成正式版本。
步驟五:發布
在詳情頁面,選擇版本和發布頁簽,選擇一個版本ID單擊操作列的發布。
選擇需要發布的環境(測試環境、生產環境或灰度環境)。
說明建議的發布順序:先逐個發布到各個灰度環境,所有灰度環境全部發完后,再發布至生產環境。
單擊確定,所有生產環境的節點都將部署該版本的函數代碼。
邊緣存儲
邊緣存儲是Key-Value型存儲服務,適用于由開發者低頻寫、ER高頻讀的場景。當您將數據添加在邊緣存儲后,該數據將快速自動同步到全球的邊緣節點,供邊緣函數ER快速讀取使用同節點的邊緣存儲數據。
開通邊緣存儲服務
使用邊緣存儲前,您需要先開通邊緣存儲服務。
登錄DCDN控制臺。,選擇邊緣存儲,單擊立即開通。
使用邊緣存儲管理數據
創建存儲空間
各個存儲空間相互獨立,最多可創建10個存儲空間。
- 登錄DCDN控制臺。
在左側導航欄選擇
,單擊創建存儲空間,按照界面提示輸入空間名稱和描述。說明空間名稱對應ER內置API中的參數NameSpace。
單擊確定。
管理存儲數據
- 登錄DCDN控制臺。
在存儲空間列表中找到目標存儲空間,單擊操作列的管理。
單擊添加KV數據,按照界面提示填寫鍵(Key)和值(Value)。
單擊確定。
可選:添加存儲數據后,您可以單擊修改、查看或刪除來管理存儲數據。