阿里云國際站經銷商,主營阿里云,騰訊云,華為云,亞馬遜aws,谷歌云gcp,微軟云az,免費開戶,代充值優(yōu)惠大,聯系客服飛機@jkkddd
工作流調度固定版本或預留資源函數
本文介紹了工作流調度固定版本或預留資源函數和Serverless工作流實現的具體步驟。簡介
在實際生產場景中,任務流所調度的函數因為業(yè)務場景變化可能需要頻繁變更,您會考慮到如何避免變更帶來的非預期行為,控制變更穩(wěn)定性。在Serverless工作流任務步驟使用固定版本的函數將對以下場景產生幫助:
流程A編排了多個函數f1、f2和f3,同一次任務必須執(zhí)行函數的相同版本。假如流程A正在執(zhí)行中,已執(zhí)行完了函數f1,但是此時進行了函數更新,則正在執(zhí)行的流程可能會執(zhí)行函數f2、f3的最新版本造成非預期情況發(fā)生。那么必須保證,每次流程執(zhí)行函數的版本在執(zhí)行時已經固定。
某個函數的快速回滾。上線后,發(fā)現流程執(zhí)行失敗是由于新變更引起的,那么需要快速回滾流程執(zhí)行上一固定版本。
通過函數別名調用預留資源函數、降低函數冷啟動時間及優(yōu)化函數成本。
函數計算版本及別名可以有效支持類似上述場景的持續(xù)集成、持續(xù)發(fā)布的各種需求。下文將通過一個具體示例展示如何在流程中使用別名調用預留資源函數。預留資源函數是依賴于固定版本函數的,因此對于其他需要固定版本的場景,也可參見本示例操作。
流程
本次示例操作包含以下步驟:
創(chuàng)建函數預留實例
創(chuàng)建工作流
使用命令行或控制臺執(zhí)行并觀察預留函數執(zhí)行
步驟一:創(chuàng)建函數預留實例
首先創(chuàng)建一個名為fnf-demo的函數計算服務,并在該服務下創(chuàng)建一個名為provision的Python3函數并發(fā)布版本、別名,生成預留實例,詳細步驟,請參見預留模式操作假設創(chuàng)建的函數版本為1,別名為online,并發(fā)布了一個預留實例。
步驟二:創(chuàng)建工作流
Serverless工作流對函數計算版本及別名進行了原生支持。
在Serverless工作流的Task步驟中,默認填寫的resourceArn一般為acs:fc:{region}:{accID}:services/fnf/functions/test。按照函數執(zhí)行規(guī)則,默認會選擇最新的函數版本執(zhí)行。您可以發(fā)布版本或別名,并在工作流Task步驟中填寫resourceArn一項為acs:fc:{region}:{accID}:services/fnf.{別名or版本}/functions/test來實現對特定版本函數的調用。
步驟三:使用命令行或控制臺執(zhí)行并觀察預留函數執(zhí)行
啟動工作流執(zhí)行。使用預留模式前。
使用預留模式后
從工作流的執(zhí)行時間來看,在task步驟從未使用預留模式前的耗時500 ms縮短為預留模式后的230 ms。
心靈雞湯:
標題:阿里云國際賬號購買,阿里云國際站
地址:http://m.nickbaillie.com/kfxw/64303.html