備受關(guān)注的Distributed Cloud|2021全球分布式云大會(huì)·北京站于4月7日隆重召開,分布式云是2021年全球十大重要戰(zhàn)略科技趨勢,利用分布式架構(gòu)技術(shù)創(chuàng)新,連接邊緣節(jié)點(diǎn)、私有云和公有云的IT資源組成分布式混合云。
全球分布式云聯(lián)盟力求打造分布式云計(jì)算旗艦級技術(shù)盛會(huì),本次大會(huì)共設(shè)有分布式云報(bào)告會(huì)、邊緣計(jì)算論壇、Serverless云原生論壇、分布式數(shù)據(jù)庫論壇、分布式存儲(chǔ)論壇,跨境SD-WAN咨詢會(huì)等六大論壇,圍繞分布式云、分布式算力、Serverless、云原生、HTAP、IPFS等技術(shù)與實(shí)踐展開。聯(lián)合阿里云、騰訊云、百度云、金山云等全棧技術(shù)引領(lǐng)者與全球分布式云聯(lián)盟攜手打造這場技術(shù)饕餮盛宴。
在4月7日下午舉辦的云原生論壇上,騰訊云 Serverless 技術(shù)產(chǎn)品專家發(fā)表了題為《Serverless 化云原生釋放云計(jì)算效率紅利》的主題演講。
李嘯川,騰訊云 Serverless 技術(shù)產(chǎn)品專家,目前負(fù)責(zé)騰訊云 Serverless 產(chǎn)品及企業(yè)解決方案的設(shè)計(jì)工作,致力于推動(dòng)云原生技術(shù)架構(gòu)演進(jìn)及落地,為技術(shù)工作者提供高效的云服務(wù)產(chǎn)品。十余年技術(shù)研發(fā)經(jīng)驗(yàn),曾就職于 Oracle、IBM,從事于企業(yè)級商業(yè)套件及云服務(wù)引擎研發(fā)工作,后切換到消費(fèi)互聯(lián)網(wǎng),孵化小米 MIOT、創(chuàng)立小米有品電商等業(yè)務(wù),加入騰訊云之前擔(dān)任愛奇藝技術(shù)總監(jiān),業(yè)務(wù)線技術(shù)負(fù)責(zé)人。
01 面向業(yè)務(wù)的技術(shù)體系關(guān)注哪些方面?
首先,通過業(yè)務(wù)視角來看為什么需要關(guān)注 Serverless。這里的業(yè)務(wù)視角是廣義的業(yè)務(wù),即滿足需求,解決痛點(diǎn),輸出價(jià)值。技術(shù)對業(yè)務(wù)的助力可以簡單歸納為三個(gè)階段:
迭代原型,驗(yàn)證業(yè)務(wù):從零到一,通過技術(shù)手段提升業(yè)務(wù)原型的迭代和驗(yàn)證效率;持續(xù)優(yōu)化,強(qiáng)化業(yè)務(wù):在運(yùn)行效率和工程效率方面不斷優(yōu)化,增強(qiáng)業(yè)務(wù)的競爭力;構(gòu)建壁壘,賦能業(yè)務(wù):在技術(shù)深度方面形成護(hù)城河,持續(xù)保持業(yè)務(wù)的差異化優(yōu)勢;
為了更好的支撐業(yè)務(wù),在技術(shù)體系中我們會(huì)關(guān)注哪些問題:
穩(wěn)定性和質(zhì)量,是業(yè)務(wù)正常推進(jìn)的基石;
開發(fā)效率,幫助業(yè)務(wù)爭取寶貴的時(shí)間,決定了業(yè)務(wù)能否在賽道中勝出,比如有了新的想法能否快速得到驗(yàn)證;
運(yùn)行效率,研發(fā)同學(xué)亙古不變的執(zhí)著追求,更優(yōu)化的算法,更優(yōu)雅的架構(gòu),同時(shí)也將決定深度和難度;
成本,這里的成本,一方面是資源成本,例如運(yùn)行服務(wù)或系統(tǒng),需要占用的計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)等基礎(chǔ)資源的成本。另一方面是時(shí)間和人力成本,對于企業(yè)來說,尤其是互聯(lián)網(wǎng)或業(yè)務(wù)導(dǎo)向的公司,人力成本占企業(yè)整體比重較大;
02 Serverless 能夠釋放哪些紅利
從工業(yè)界的角度來看,包含四個(gè)維度:模塊化程度,自動(dòng)化運(yùn)維程度,彈性效率,故障恢復(fù)能力
從這幾個(gè)方面可以看出對基礎(chǔ)設(shè)施層,進(jìn)行了趨勢演進(jìn)的判斷,目前 Serverless 在可以預(yù)見的階段內(nèi),是計(jì)算平臺(tái)的一個(gè)必然的演進(jìn)方向,也是目前可預(yù)見的最終方向。Serverless 分成兩個(gè)階段,第一個(gè)階段是容器化的 Serverless,再下一個(gè)階段是 fPaaS Serverless 的平臺(tái)。
關(guān)于學(xué)術(shù)界對 Serverless 定義,加州大學(xué)伯克利分校于 2009 年曾發(fā)表過一篇論文,精準(zhǔn)預(yù)測了未來 10 年云計(jì)算演進(jìn)的方向,2019 年又發(fā)表了一篇論文,預(yù)測Serverless 將會(huì)成為未來云計(jì)算最終的產(chǎn)品形態(tài)或服務(wù)平臺(tái)。
騰訊云連續(xù)兩年舉辦 ServerlessDays 峰會(huì),2020 年邀請了文章主要作者之一 Johann Schleier-Smith ,給我留下印象最深的觀點(diǎn)是,他把云計(jì)算分成兩個(gè)階段,第一個(gè)階段:簡化系統(tǒng)管理,包括虛擬機(jī)、容器等,提供可編程的、簡化的管理方式,由云平臺(tái)托管基礎(chǔ)設(shè)施;下一個(gè)階段:簡化開發(fā),開發(fā)者只關(guān)注核心代碼,云平臺(tái)負(fù)責(zé)系統(tǒng)管理、運(yùn)維、架構(gòu)等等,為開發(fā)提供更好的體驗(yàn),讓開發(fā)效率得到更大的提升。
在講解了工業(yè)界和學(xué)術(shù)界的定義之后,我們來對比 Serverless 與傳統(tǒng) Server 的服務(wù)方式。
在傳統(tǒng)的 Server 金字塔圖中,從底層系統(tǒng)的安全、系統(tǒng)資源的調(diào)度,到中層的日志、監(jiān)控、運(yùn)維,再到上一層的數(shù)據(jù)、存儲(chǔ),最后金字塔尖的業(yè)務(wù)邏輯。對于業(yè)務(wù)開發(fā)來說,真正產(chǎn)生價(jià)值的就是上金字塔尖這部分業(yè)務(wù)邏輯的編寫,服務(wù)于客戶,為客戶帶來價(jià)值。下面的部分更多是基礎(chǔ)的支撐,從這個(gè)角度來說,Serverless 就是解決下面的部分基礎(chǔ)設(shè)施維護(hù),平臺(tái)側(cè)承擔(dān)底層基礎(chǔ)部分,給到開發(fā)者更少的運(yùn)維成本和工作量,Less is more,讓企業(yè)把有效的人力、資源去放到更多產(chǎn)生業(yè)務(wù)價(jià)值的方面。
以業(yè)務(wù)開發(fā)舉例,在規(guī)劃一個(gè)項(xiàng)目時(shí),大概有 50% 左右的時(shí)間設(shè)計(jì)整個(gè)架構(gòu),比如高可用、高并發(fā)、可拓展,如何設(shè)計(jì)架構(gòu)才能支撐這樣的規(guī)模,若平臺(tái)側(cè)來承接這部分工作,能夠解放大量的人力和精力。
對于商業(yè)模式的改變,在一些典型場景:比如電商秒殺、春晚搶紅包,都有瞬時(shí)的流量峰值,為了能承接這樣瞬時(shí)的峰值,需儲(chǔ)備巨大的資源,但這部分資源在很長的一段時(shí)間內(nèi)是閑置的狀態(tài)。
如何解決資源冗余的問題呢?這種商業(yè)模式在以往衣食住行各行業(yè)早已經(jīng)落地,只是在計(jì)算領(lǐng)域?qū)⑵鋸?fù)用。早期是自建機(jī)房,接著開始租用云主機(jī),最終通過 Serverless 形成按需付費(fèi)。類比交通,購買汽車,自己負(fù)擔(dān)維護(hù)、折舊成本并占用自有時(shí)間駕駛;租用汽車,租用期間占用自有時(shí)間駕駛且開不開都需要付租金;出租車,按需啟動(dòng),里程計(jì)費(fèi)。云廠商提供的計(jì)算資源,在租用期間擁有使用權(quán)。但在租用過程中,會(huì)有一部分計(jì)算資源的冗余,而通過 Serverless 按需付費(fèi),根據(jù)實(shí)際需求量來申請使用計(jì)算服務(wù),達(dá)成業(yè)務(wù)目標(biāo)后即可終止計(jì)算服務(wù),停止計(jì)費(fèi)。
從這個(gè)角度來看,Serverless 核心價(jià)值可以歸納到三點(diǎn):
簡化運(yùn)維,能夠提供穩(wěn)定運(yùn)行環(huán)境,支持多場景、彈性伸縮的服務(wù);
更低成本,按需付費(fèi),減少冗余資源的計(jì)費(fèi);
時(shí)間效率,通過 Serverless 這種面向事件的編程模式,極大地簡化架構(gòu)設(shè)計(jì),簡化不同規(guī)范、不同標(biāo)準(zhǔn)的團(tuán)隊(duì)協(xié)作??焖俚貙I(yè)務(wù)落地,快速投放到市場做驗(yàn)證。
03 Serverless 落地方式
騰訊云 Serverless 產(chǎn)品矩陣
Serverless HTTP
目前支撐微信小程序開發(fā)平臺(tái),比較典型還有 Web 應(yīng)用、API 服務(wù)等等。云函數(shù)已經(jīng)支撐微信開發(fā)平臺(tái)超過 100 萬的開發(fā)者,每天超過 150 億次調(diào)用。
Serverless Trigger
即觸發(fā)器,由云上各組件定義”事件”,通過事件驅(qū)動(dòng)模型觸發(fā)對函數(shù)的調(diào)用。
以上兩點(diǎn)是輕量的調(diào)用和服務(wù),音視頻處理和數(shù)據(jù)處理 ETL 屬于重計(jì)算場景,進(jìn)一步細(xì)分,可以理解為音視頻處理是對于非結(jié)構(gòu)化數(shù)據(jù)的處理,包括轉(zhuǎn)碼、理解,數(shù)據(jù)處理,ETL 是對結(jié)構(gòu)化數(shù)據(jù)的處理,包括數(shù)據(jù)的分析、匯總、 計(jì)算。
上面更多的是從應(yīng)用的視角去看 Serverless 的產(chǎn)品能力,Serverless Framework 和云函數(shù) SCF 是基礎(chǔ)產(chǎn)品支撐,云函數(shù)是作為新一代計(jì)算平臺(tái),支撐上一層應(yīng)用所有的計(jì)算需求。
Serverless Framework 是騰訊云和北美 「Serverless.com」這家企業(yè)合作的產(chǎn)品,是北美最流行的 Serverless 開發(fā)工具。
下面詳細(xì)介紹下以上產(chǎn)品能力的使用場景:
Serverless HTTP 產(chǎn)品能力
在傳統(tǒng)業(yè)務(wù)模式中,Web 應(yīng)用和 API Server,首先需要?jiǎng)?chuàng)建計(jì)算實(shí)例,在計(jì)算實(shí)例上部署應(yīng)用服務(wù)器,再部署發(fā)布代碼,完成后通過綁定公網(wǎng)入口連接到服務(wù),形成服務(wù)閉環(huán)。如果通過 Serverless 來實(shí)現(xiàn),API 網(wǎng)關(guān)和云函數(shù)天然的集成,只需在函數(shù)中編寫業(yè)務(wù)邏輯,如果邏輯較為清晰,幾分鐘即可完成開發(fā)、調(diào)試、發(fā)布上線,極大地提升了業(yè)務(wù)迭代效率。
Serverless 觸發(fā)器
基于云原生的架構(gòu),云上的各種組件,例如 COS 對象存儲(chǔ)、Ckafka 消息隊(duì)列中間件、CLS 日志服務(wù)等等,當(dāng)定義的事件被觸發(fā)后,組件內(nèi)置觸發(fā)器將調(diào)用云函數(shù)來處理對應(yīng)的業(yè)務(wù)邏輯。COS 對象存儲(chǔ)觸發(fā)器與函數(shù)的長時(shí)運(yùn)行、大規(guī)格實(shí)例等產(chǎn)品能力就構(gòu)成了了 Serverless 多媒體解決方案的基礎(chǔ)。
Serverless 音視頻處理
面向開發(fā)者,打造中臺(tái)服務(wù),主要提供 3 點(diǎn)差異化能力:
算力可配置,通過函數(shù)規(guī)格顯式的選擇計(jì)算實(shí)例大小;
框架 / 編碼器可配置,支持部署自研的或者開源的編碼器,實(shí)現(xiàn)原有轉(zhuǎn)碼或音視頻處理服務(wù)的平滑遷移。
工作流可配置,上下游的產(chǎn)業(yè)鏈、業(yè)務(wù)流程串聯(lián),實(shí)現(xiàn)整個(gè)業(yè)務(wù)鏈條閉環(huán)。
在轉(zhuǎn)碼基礎(chǔ)上,Serverless 云函數(shù)提供了更多深度的能力,和騰訊云內(nèi)部有深度積累的各實(shí)驗(yàn)室聯(lián)合探索了很多解決方案,包括智能審核、畫質(zhì)增強(qiáng)、視頻理解、視頻編輯等。
針對音視頻實(shí)時(shí)互動(dòng),Serverless 云函數(shù)也提供了包括一鍵式觸發(fā)直播推、直播流旁路錄制的后處理、內(nèi)容的審核、對原內(nèi)容的增強(qiáng)(實(shí)時(shí)字幕、實(shí)時(shí)翻譯)等能力的封裝。
Serverless 數(shù)據(jù) ETL
除了對非結(jié)構(gòu)化數(shù)據(jù)的一些處理,同樣支持對結(jié)構(gòu)化數(shù)據(jù) ETL 的處理,通過對公網(wǎng)API、DB、文件存儲(chǔ)等多數(shù)據(jù)源的拉取、大量數(shù)據(jù)的批處理、加載至目標(biāo)存儲(chǔ),覆蓋到電商、搜索、內(nèi)容、監(jiān)測、分析等多個(gè)場景。
最后與大家分享下已有企業(yè)級的解決方案,助力更多企業(yè)高效達(dá)成業(yè)務(wù)目標(biāo):Serverless 多媒體處理,Serverless 數(shù)據(jù)處理,Serveless AI 推理,Serverless HTTP。
以上就是我的分享,謝謝。