4月,阿里云Serverless工作流正式商業(yè)化,這是一款用于協(xié)調(diào)多個分布式任務(wù)執(zhí)行的全托管 Serverless 云服務(wù)。產(chǎn)品致力于簡化開發(fā)和運(yùn)行業(yè)務(wù)流程所需要的任務(wù)協(xié)調(diào)、狀態(tài)管理以及錯誤處理等繁瑣工作,讓用戶聚焦業(yè)務(wù)邏輯開發(fā)。
精準(zhǔn)打造云上自動生產(chǎn)線,Serverless工作流正式商用
工作流是一種非常常見的場景,比如企業(yè)內(nèi)部審批、采購訂單、ETL等日常企業(yè)事務(wù),或者大數(shù)據(jù)處理流水線,常規(guī)或定制化自動化運(yùn)維等。此外,音視頻行業(yè)的多媒體文件分片轉(zhuǎn)碼、格式轉(zhuǎn)換、審核校驗和人臉識別等長時任務(wù),電商旅游行業(yè)的客戶線上訂單,AI行業(yè)的機(jī)器學(xué)習(xí)流水線, 生信行業(yè)的基因測序工作流。
這些場景面臨著以下難點(diǎn):一般由眾多異步分布式任務(wù)組成,控制邏輯和任務(wù)邏輯交織在一起,流程復(fù)雜冗長;分布式任務(wù)可能跨越公共云和本地機(jī)房,安全的打通網(wǎng)絡(luò)代價很大;整個工作流執(zhí)行完畢耗時過長,造成資源占用的浪費(fèi);涉及異步且關(guān)鍵業(yè)務(wù)流程,務(wù)必保證數(shù)據(jù)一致性;繁復(fù)的執(zhí)行步驟如何進(jìn)行可視化監(jiān)控等等。
Serverless工作流正式針對這些痛點(diǎn),分離控制邏輯與任務(wù)邏輯,細(xì)化責(zé)任,便于管理和維護(hù); 將流程以模版方式統(tǒng)一定義控制,簡化編排,通過串聯(lián)或并行等多種方式編排任務(wù);支持函數(shù),隊列,云服務(wù)等多種任務(wù)類型,打通公共云和企業(yè)內(nèi)網(wǎng);支持最長1年的執(zhí)行任務(wù),但卻采用Serverless計費(fèi)模型, 按需付費(fèi);動態(tài)調(diào)用并發(fā)函數(shù),保持狀態(tài)和消息的持久化,信息不丟失且最終同步,提高容錯性,自動處理異常;流程進(jìn)度可視化,歷史執(zhí)行可追溯性等等。

助力圖森未來,自動化數(shù)據(jù)處理平臺, 讓一切簡單可靠
圖森未來是一家專注于L4級別無人駕駛卡車技術(shù)研發(fā)與應(yīng)用的人工智能企業(yè),面向全球提供可大規(guī)模商業(yè)化運(yùn)營的無人駕駛卡車技術(shù),為全球物流運(yùn)輸行業(yè)賦能。目前已完成D輪融資,估值超過10億美元。無人駕駛技術(shù)研發(fā)依賴大量的路測試驗數(shù)據(jù)積累,而高效進(jìn)行路測、快速對路測數(shù)據(jù)進(jìn)行處理來指導(dǎo)模型的更新迭代是這類場景的核心訴求。
路測過程中會有大量數(shù)據(jù)產(chǎn)生,而對這些數(shù)據(jù)的處理流程則復(fù)雜多變,即使對于同一批數(shù)據(jù),不同的業(yè)務(wù)小組也會有不同的使用及處理方式。如何有效管理不同的數(shù)據(jù)處理流程、降低人為介入頻率能夠大幅的提高生產(chǎn)效率。
路測不定時運(yùn)行的特點(diǎn)使得流程編排任務(wù)運(yùn)行時間點(diǎn)、運(yùn)行時長具有極大的不確定性,本地機(jī)房獨(dú)自建立流程管理系統(tǒng)難以最大優(yōu)化機(jī)器利用率,造成資源浪費(fèi)。而圖森未來本地已有許多單元化業(yè)務(wù)處理腳本及應(yīng)用程序,但因為各種限制而無法全量的遷移上云,這也對如何合理化使用云上服務(wù)帶來了挑戰(zhàn)。
另外,由于處理流程的步驟繁多,不同任務(wù)間的數(shù)據(jù)共享變得十分重要。任務(wù)之間在相互依賴的情況下,非常考驗系統(tǒng)可靠性。因此,對于復(fù)雜流程的步驟間的狀態(tài)及數(shù)據(jù)管理也是業(yè)務(wù)所面臨的一項挑戰(zhàn)。

針對上述情況,圖森未來開始探索數(shù)據(jù)處理平臺的自動化。阿里云 Serverless 工作流按執(zhí)行調(diào)度的次數(shù)計費(fèi),具有易用易集成、運(yùn)維簡單等諸多優(yōu)點(diǎn),能夠很好的解決上述場景中所遇到的問題,非常適合這類不定時運(yùn)行的離線任務(wù)場景。Serverless 工作流還支持編排本地或自建機(jī)房的任務(wù),圖森未來通過使用 Serverless 工作流原生支持的消息服務(wù)MNS解決了云上云下的數(shù)據(jù)打通問題,使得本地的原有任務(wù)得到很好的編排及管理。
除了調(diào)度外,Serverless 工作流也支持對任務(wù)的狀態(tài)及執(zhí)行過程中所產(chǎn)生的數(shù)據(jù)進(jìn)行維護(hù)。圖森未來通過使用任務(wù)的輸入輸出映射及狀態(tài)匯報機(jī)制,高效的管理了流程中各任務(wù)的生命周期及相互間的數(shù)據(jù)傳遞。
在未來,隨著業(yè)務(wù)規(guī)模的擴(kuò)大,圖森未來將持續(xù)優(yōu)化離線大數(shù)據(jù)處理流程的運(yùn)行效率及自動化水平。通過各種探索,圖森未來將進(jìn)一步提升工程團(tuán)隊的效率,將更多的精力和資金投入到業(yè)務(wù)創(chuàng)新中去。
Serverless工作流更多應(yīng)用場景

各個公司會有如下的一些典型工作流場景。這里簡單介紹三個典型應(yīng)用:訂單流程審批,可支持1年執(zhí)行時長對于電商、旅行行業(yè)的訂單,或者企業(yè)內(nèi)部的日常各類申請, 從下發(fā)到生效都要經(jīng)過多個環(huán)節(jié),需要跨公司辦公網(wǎng)絡(luò)和公共云的多網(wǎng)絡(luò)環(huán)境,途徑多個環(huán)節(jié)的多步驟分布式,可能涉及人工介入,最終數(shù)據(jù)確保強(qiáng)一致性。目前Serverless工作流默認(rèn)的支持最長 1 年的執(zhí)行,以及并行觸發(fā) 1 萬個流程。

多媒體文件處理,降低失敗率、提升吞吐量Serverless工作流同樣適用多任務(wù)編排,比如多媒體文件如轉(zhuǎn)碼、截幀、人臉識別、語音識別、審核上傳等各類處理。用戶可以編排成一個完整的處理流程,通過函數(shù)計算提交媒體處理(IMM)任務(wù)(或自建處理器),產(chǎn)出一個符合業(yè)務(wù)需求的輸出。各任務(wù)的執(zhí)行錯誤異常可以被可靠的重試,大大提升多媒體任務(wù)處理吞吐量。對于視頻點(diǎn)播、 視頻轉(zhuǎn)碼等重度依賴算力的任務(wù)如果采用Serverless方式搭建,將函數(shù)計算和Serverless工作流組合使用,僅需3人天便可上線落地。

自動化運(yùn)維,流程進(jìn)度可視化跟進(jìn)自動化運(yùn)維常見有步驟繁瑣時間長短不一,單機(jī)腳本可靠性低,依賴復(fù)雜等常見的挑戰(zhàn),另外進(jìn)度無法可視化。Serverless 工作流+函數(shù)計算的流程可以很好地應(yīng)對這些挑戰(zhàn)。例如軟件自動化部署從構(gòu)建Docker容器,上傳容器鏡像,開始并追蹤各節(jié)點(diǎn)下拉鏡像并啟動新版本鏡像的容器,每一步函數(shù)產(chǎn)生的日志會被保存到日志服務(wù)可供查詢分享。基于工作流的自動化工具相比單機(jī)運(yùn)維腳本具有高可用,自帶錯誤處理機(jī)制和進(jìn)度圖形化的特點(diǎn)。

"Serverless 工作流是阿里云 Serverless 產(chǎn)品體系中的關(guān)鍵一環(huán)。" 阿里云 Serverless產(chǎn)品負(fù)責(zé)人楊皓然表示,“ 通過 Serverless 工作流,用戶能夠?qū)⒑瘮?shù)計算、視覺智能平臺等多個阿里云服務(wù),或者自建的服務(wù),以簡單直觀的方式編排為工作流,迅速構(gòu)建彈性高可用的云原生應(yīng)用。”
據(jù)悉,阿里云在2017年推出函數(shù)計算, 該服務(wù)根據(jù)應(yīng)用負(fù)載變化實時智能地彈性擴(kuò)縮容,1分鐘完成上萬實例的伸縮并保證穩(wěn)定的延時。目前已經(jīng)支撐微博、芒果TV、華大基因、圖森未來、石墨科技等用戶的關(guān)鍵應(yīng)用,輕松應(yīng)對業(yè)務(wù)洪峰。