ASW工作流最佳實踐(二):使用ASW并發調用函數,wcf工作流例子ASW工作流最佳實踐(二):使用ASW并發調用函數在很多場景下,比如音視頻轉碼、ETL作業處理、基因數據處理等。,我們可以通過工作流并行調用云函數來并行處理任務,大大提高了任務處理的吞吐量,滿足了應用場景的高實時性和并發性。本期主要分享如何利用ASW的......
在很多場景下,比如音視頻轉碼、ETL作業處理、基因數據處理等。,我們可以通過工作流并行調用云函數來并行處理任務,大大提高了任務處理的吞吐量,滿足了應用場景的高實時性和并發性。
本期主要分享如何利用ASW的地圖節點能力進行并發數據求和計算。
01。
創建一個函數
1.登錄“云函數控制臺”,創建一個云函數,函數名為Sum,運行環境Python 3.6。
云平臺地址:https://console.cloud.tencent.com/scf
# *編碼:utf8 *
導入json
def mainhandler(事件,上下文):
總和= 0
對于事件中的I[值]:
總和+= i
返回總和
02。
創建工作流
1.登錄應用與編排服務流程控制臺,在工作流頁面點擊“新建”,進入創建工作流頁面,點擊“入門模板”,選擇“映射周期”模板。
ASW中的Map節點將遍歷輸入中的數組類型參數,并為數組中的每個元素并行執行其串行節點。Map類似于編程語言中的foreach,但是節點循環任務是并發執行的。
https://console.cloud.tencent.com/asw ASW控制臺地址
2.在代碼中修改迭代器下的States節點中的state01,以調用sum函數,如以下工作流中所定義:
{
注釋:使用Map節點循環處理數組array中的數據,
StartAt: MapState,
國家:{
映射狀態:{
類型:地圖,
ItemsPath: $。數組,
結果路徑:$。結果,
MaxConcurrency: 2,
接下來:FinalState,
迭代器:{
StartAt:狀態01,
國家:{
狀態01: {
類型:任務,
注釋:調用求和函數,
資源:qrn:QCS:ASW:AP廣州:123456789:SDK:JSON:q cloud:SCF:Invoke/sum/$ DEFAULT/DEFAULT,
結束:真的
}
}
}
},
最終狀態:{
類型:通過,
結束:真的
}
ItemsPath指定一個作為Map節點循環的數組。
MaxConcurrency指定Map節點并發調用的函數數量。
迭代器是為Map節點的循環任務定義的。
3.單擊下一步。在配置基本信息頁面,輸入工作流名稱,選擇運行角色和工作流類型,點擊完成,完成工作流創建。
03。
運行工作流
1.在工作流列表中,點擊“名稱”鏈接進入工作流。在彈出的“開始執行”窗口中,輸入JSON格式的數組array。例如:
{
數組:[{
值:[1,2,3,4,5]
},
{
值:[4,2,3,1,5]
},
{
值:[1,0,8,4,5]
},
{
值:[7,2,3,2,5]
}
]
}
2.單擊“確定”。狀態執行完成后,您可以在詳細信息頁面上查看執行結果。滑動到頁面底部,在執行歷史下,可以查看子節點的操作。我們可以看到Map節點會調用MaxConcurrency為2的sum函數,每個sum函數的參數都是數組array的一個項。
3.點擊參考資料中的云函數鏈接,可以直接跳轉到云函數控制臺,查看函數執行的細節。
特別聲明:以上文章內容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關于作品內容、版權或其它問題請于作品發表后的30日內與ESG跨境電商聯系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號密碼登錄
平臺顧問
微信掃一掃
馬上聯系在線顧問
小程序
ESG跨境小程序
手機入駐更便捷
返回頂部