Function Compute支援為服務版本建立別名。結合別名和版本功能,實現軟體開發生命週期中的持續整合和發布。本文介紹別名的含義以及如何通過Function Compute控制台管理別名。
什麼是別名
Function Compute支援為服務的版本建立別名。別名可以理解為指向特定版本的指標。您可以利用別名來輕鬆實現發布、復原以及灰階發布等功能。別名無法脫離服務或版本單獨存在。使用別名訪問服務或函數時,Function Compute會將別名解析為其指向的版本,調用方無需瞭解別名指向的具體版本。
以HTTP觸發器為例,如果沒有別名,每次新版本上線,您需要手動修改HTTP觸發器關聯的版本號碼,在修改的過程中會影響用戶端的使用。如果使用別名進行版本管理,您可以實現版本的平滑升級。如下圖所示,將別名PROD指向穩定的版本1。用戶端直接通過別名PROD調用版本1下的函數。
版本1發布後,您可以繼續在LATEST版本上開發新功能。由於用戶端是通過別名調用對應版本下的函數,當需要發布新版本2時,只需要將別名PROD更新為指向版本2,此時,用戶端調用時解析出的版本即為版本2,這樣就可以完成版本的更新迭代。您也可以更改別名的指向,將別名PROD重新指向版本1復原到之前的版本。通過這種方式發布,不會影響用戶端的使用。
前提條件
建立別名
- 登入Function Compute控制台,在左側導覽列,單擊服務及函數。
- 在頂部功能表列,選擇地區,然後在服務列表頁面,單擊目標服務。
在左側導覽列,選擇別名管理,在別名管理頁面,單擊建立別名。
在建立服務別名面板,填寫別名的相關資訊,然後單擊確定。
相關配置項說明如下。
配置項
說明
名稱
要建立的別名的名稱。
描述
別名的描述資訊。
主要版本
設定別名的主要版本。
啟用灰階版本
是否啟用灰階版本。如需啟用灰階發布,請選擇是,並按需設定以下配置項。
灰階版本
設定別名的灰階版本。
灰階類型
根據不同的灰階策略分為按百分比隨機灰階和按指定規則灰階。
按百分比隨機灰階:設定一定的權重切換流量到灰階版本。
按指定規則灰階:設定一定的規則,並按照指定的規則模式進行灰階發布。
說明按指定規則灰階目前僅在使用HTTP觸發器調用別名時生效。
灰階版本權重
當灰階類型為按百分比隨機灰階時,需設定此配置項。
表示切換流量至灰階版本的百分比。例如,設定該配置項的值為5%,Function Compute將分配5%的流量到灰階版本,95%的流量到主要版本。
規則模式
當灰階類型為按指定規則灰階時,需設定此配置項。
表示對設定的規則的選擇模式,取值如下:
同時滿足下列規則
滿足下列任意規則
規則列表
當灰階類型為按指定規則灰階時,需設定此配置項。
表示具體的規則內容,包含以下三部分:
參數類型:取值包含Header、Cookie和Query。
參數:控制灰階發布的參數名。
條件:計算條件。Function Compute將參數的實際值與您填寫的參數值按照您設定的條件進行計算,如果滿足條件,則本條請求被路由至灰階版本。包含以下枚舉值:
=、!=、>、<、>=、<=
:運算子比較條件。例如,設定條件為=
,表示僅當請求參數實際值等於設定的參數值時,將本條請求路由至灰階版本。in
:字串匹配條件,僅當請求參數實際值包含在設定的參數值以內時,將本條請求路由至灰階版本。值分布百分比
:表示按照指定參數值的特定百分比灰階發布。例如,設定參數類型為Header,參數為user-id
,值為20
,表示根據HTTP請求Headeruser-id
值的分布,其中20%的請求路由至灰階版本。
值:控制灰階發布的參數值。
單擊下方的+添加規則,可以添加更多其他規則。
進階選項
預留執行個體灰階比例
用於控制預留模式的灰階執行個體比例。當預留的執行個體數量大於1時,會按照該配置項設定的比例產生預留模式的執行個體數量,否則,按照預設的1%產生預留模式的執行個體數量。
重要僅當您預留的執行個體數量大於1時,該配置項的值有效。
在別名管理頁面,您可以看到剛才建立的別名。您還可以根據介面提示對已建立的別名進行編輯、刪除不需要的別名或者單擊目標別名操作列的日誌庫跳轉到Log ServiceSLS控制台查看日誌情況。
刪除一個別名只會刪除別名本身,並不會刪除別名指向的版本,也不會刪除指向此別名的觸發器。
更多資訊
除了通過控制台,您還可以使用Serverless Devs為服務配置別名。更多操作,請參見Serverless Devs常用命令。