誰為誰造Serverless 云服務(wù)?
本文將對比傳統(tǒng)的云計算「有服務(wù)器」服務(wù)和 Serverless 「無服務(wù)器」云計算的差異,談?wù)劄槭裁?Serverless 云服務(wù)更適合「領(lǐng)域業(yè)務(wù)」和「領(lǐng)域應(yīng)用」。
這里的「領(lǐng)域」是指「軟件應(yīng)用領(lǐng)域」,也就是小程序。而專注服務(wù)領(lǐng)域和行業(yè),意味著服務(wù)商之間的競爭不再是「投入資源總量」,而是挖掘和拓展具體領(lǐng)域和行業(yè)應(yīng)用的能力,業(yè)務(wù)分析、項目管理和技術(shù)開發(fā)能力。
云服務(wù)的「按時計費」vs 「按用量計費」
先來點概念介紹。
虛擬服務(wù)器技術(shù)催生了目前的(超)大規(guī)模云計算服務(wù)平臺,例如 AWS,Google Cloud Platform 等。通過堆疊海量物理服務(wù)器,又過一套總控軟件邏輯上把這些物理服務(wù)器當(dāng)成是一臺巨型計算機,其中每一臺物理服務(wù)器又被切分為若干虛擬服務(wù)器,和其它計算資源(帶寬、存儲、域名等)一起出租給企業(yè)和應(yīng)用開發(fā)者。所以,如名所指,也因為「服務(wù)器」依然是傳統(tǒng)云業(yè)務(wù)的核心,所以傳統(tǒng)云計算業(yè)務(wù)核心依然是「服務(wù)器租賃」。
「無服務(wù)器」云計算對應(yīng)的是「有服務(wù)器」的傳統(tǒng)云計算服務(wù)?!赣蟹?wù)器」服務(wù)的傳統(tǒng)云計算服務(wù)通常「按使用時長計費」,一般是每天 24 小時以及租賃時長,例如每月。而「無服務(wù)器」計算服務(wù)則是「按用量計費」,通常按函數(shù)/軟件代碼執(zhí)行的時間、執(zhí)行時所依賴和調(diào)用的數(shù)據(jù)庫、消息服務(wù)等,按它們的使用量計費,然后從預(yù)付費中扣除或按周期訂單支付費用,用多少計算多少。
上述概念對理解下面關(guān)于無服務(wù)器應(yīng)用產(chǎn)品如何匹配「細(xì)分領(lǐng)域」十分關(guān)鍵。
「無服務(wù)器」的云計算趨勢從 2010 年的移動互聯(lián)網(wǎng)普及起步,例如,移動應(yīng)用后端云服務(wù) Parse,隨著移動應(yīng)用市場的發(fā)展和成熟,傳統(tǒng)云計算服務(wù)越來越不能滿足移動開發(fā)者們對后臺計算資源的復(fù)雜度和計費模式(租賃成本)的新要求。從適合作為手機應(yīng)用后臺的 Parse 開始,陸續(xù)出現(xiàn)不同風(fēng)格的無服務(wù)器產(chǎn)品,例如著名的 AWS Lambda,服務(wù)領(lǐng)域從移動應(yīng)用后端服務(wù)不斷細(xì)分和擴展。目前,任何需要「按需啟動」和「按用量計費」的軟件應(yīng)用,從 web 應(yīng)用到桌面應(yīng)用甚至物聯(lián)網(wǎng)產(chǎn)品,都可托管在無服務(wù)器平臺。
本文專注討論移動端應(yīng)用的無服務(wù)器計算服務(wù)。
「細(xì)分領(lǐng)域」需要「細(xì)分平臺」
經(jīng)典 MBA 市場營銷教科書的一個基本概念是「細(xì)分市場」。企業(yè)通過市場「細(xì)分」來指導(dǎo)產(chǎn)品細(xì)分,從而幫助探索甚至創(chuàng)造新的需求。本文的「細(xì)分領(lǐng)域」同時指技術(shù)架構(gòu)和市場細(xì)分。
經(jīng)過 10 多年云計算生態(tài)的進(jìn)化,無服務(wù)器已成為不算令人矚目但依然是穩(wěn)定的一個云計算產(chǎn)品,哪怕開發(fā)者們也經(jīng)常對它的價值發(fā)生激烈爭論。援引 Deloitte 的文章,無服務(wù)器云計算能為「企業(yè)應(yīng)用開發(fā)者」和「基礎(chǔ)設(shè)施工程師」這兩個關(guān)鍵崗位帶來新價值,包括:
更低的總體運維成本(免云計算資源維護(hù)、按用量計費和結(jié)算) 更專注的產(chǎn)品開發(fā)(幫助團隊聚焦業(yè)務(wù)邏輯代碼) 更安全可靠(專業(yè)化的平臺信息安全保障——安全需求外包)
移動端云服務(wù)簡史
早期的手機(原生)移動應(yīng)用從 Parse 這類服務(wù)獲得新的能力,解放了幾十萬個 app 團隊的后端服務(wù)平臺的技術(shù)運維,讓他們更專注產(chǎn)品和用戶服務(wù)。這是行業(yè)第一次看到 BaaS (后端云服務(wù))帶來的效果和效益。此后至今,傳統(tǒng)云計算(虛擬服務(wù)器)依然還是很多原生移動端開發(fā)團隊的選擇,但無服務(wù)器作為細(xì)分產(chǎn)品,各大云廠從無到有一直迭代至今。2017 年,微信小程序平臺的首發(fā),給世界移動端領(lǐng)域帶來新的「細(xì)分」。
「小程序」托管服務(wù)這一個細(xì)分領(lǐng)域的發(fā)展,背后是中國市場龐大的移動端用戶群體和他們的需求。順應(yīng)這個需求,新一代供應(yīng)商迅速發(fā)現(xiàn)無服務(wù)器技術(shù)可以和移動端后端服務(wù)結(jié)合,繼續(xù)推動市場的細(xì)分發(fā)展。
傳統(tǒng)「有服務(wù)器」云計算,例如 AWS、Google Cloud Platform等 移動端 BaaS 平臺,例如 Parse(后被 Facebook 收購) 支持通用軟件產(chǎn)品托管的「無服務(wù)器」或 FaaS (Function-as-a-Service)產(chǎn)品,例如 AWS Lambda,以及國內(nèi)的主流云廠商各自的無服務(wù)器云計算產(chǎn)品 專注「小程序」和移動端的「無服務(wù)器」平臺,例如愛范兒知曉云
不難發(fā)現(xiàn),移動端云服務(wù)的發(fā)展歷程也是云計算朝著「細(xì)分領(lǐng)域」的發(fā)展歷程。
「無服務(wù)器」產(chǎn)品簡史和應(yīng)用趨勢
2015年,亞馬遜 AWS Lambda 是第一款互聯(lián)網(wǎng)規(guī)模的「無服務(wù)器」產(chǎn)品,隨后的微軟 Azure 和 谷歌 Google Cloud Platform 陸續(xù)推出類似的產(chǎn)品跟進(jìn)。發(fā)展至今,無服務(wù)器技術(shù)已經(jīng)成為主流,并開始引起人們對構(gòu)造可擴展、「領(lǐng)域細(xì)分」計算和面向未來的應(yīng)用程序的關(guān)注。這些「細(xì)分領(lǐng)域」具體包括:
無服務(wù)器物聯(lián)網(wǎng)。業(yè)務(wù)現(xiàn)場的聯(lián)網(wǎng)設(shè)備數(shù)量急劇增加。在這種情況下,設(shè)備和利益相關(guān)者將看到來自云的緩慢響應(yīng),有時甚至來自基礎(chǔ)設(shè)施的云也可能失敗或可能無法處理任何消息。通過實施無服務(wù)器架構(gòu),資源將只在請求時和需要時被提供。資源分配管理將使我們能夠以更有效的方式利用資源。
無服務(wù)器的 Kubernetes。Kubernetes 應(yīng)用容器上的無服務(wù)器模式是一種可移植的解決方案,允許你在 Kubernetes 運行的地方運行應(yīng)用程序。無服務(wù)器版本允許開發(fā)者使用他們自己的云基礎(chǔ)設(shè)施來輕松部署、監(jiān)控和運行這些應(yīng)用程序。無服務(wù)器版本為開發(fā)者省去了提供主機或虛擬機的麻煩。Kubernetes 通過為無服務(wù)器應(yīng)用程序開發(fā)復(fù)雜的解決方案,幫助開發(fā)者和運營商簡化工作。Azure、AWS Fargate 和 Knative 等流行的容器使開發(fā)云應(yīng)用、創(chuàng)建服務(wù)和創(chuàng)建事件變得容易。
無服務(wù)器混合云:希望建立利用兩個或多個無服務(wù)器云的應(yīng)用程序的開發(fā)者應(yīng)考慮將功能作為服務(wù)來編寫和實現(xiàn)。如果你正在尋找監(jiān)控、管理和保護(hù)混合無服務(wù)器環(huán)境的工具,云管理員應(yīng)該查看開源項目。Knative 是一個基于 Kubernetes 的平臺,用于推動 DevOps 工作流程,是用于統(tǒng)一開發(fā)容器化和無服務(wù)器的應(yīng)用,在公共和私有云平臺上進(jìn)行配置。
大數(shù)據(jù)中的無服務(wù)器。現(xiàn)在我們不能指望數(shù)據(jù)流層中傳入數(shù)據(jù)的速率是固定的。因此,我們需要實時存儲,當(dāng)傳入的數(shù)據(jù)大量增加時,可以擴展存儲,當(dāng)數(shù)據(jù)傳輸率低時,可以減少存儲。無服務(wù)器大數(shù)據(jù)架構(gòu)的重點是計算和存儲節(jié)點的解耦。不僅是解耦,而且需要自動管理,即根據(jù)數(shù)據(jù)庫服務(wù)器的負(fù)載自動啟動/關(guān)閉、擴大或縮小,這在無服務(wù)器架構(gòu)中是可以做到的。此外,成本也應(yīng)該取決于使用情況,因為 Amazon Aurorado 是按秒計算的。
有狀態(tài)應(yīng)用中的無服務(wù)器。云廠商可以將他們的應(yīng)用提升到一個新的水平。分布式企業(yè)應(yīng)用可以是有狀態(tài)的,可以自動恢復(fù),可以從災(zāi)難中快速恢復(fù),可以在基礎(chǔ)設(shè)施和應(yīng)用層面上進(jìn)行擴展,對集中式數(shù)據(jù)庫的依賴性最小。
通過將數(shù)據(jù)庫擴展到無服務(wù)器或復(fù)制緩存系統(tǒng),大量的數(shù)據(jù)可以被相對快速地處理。通過「觸發(fā)器」設(shè)計,軟件代碼和功能在啟動的同時趕上了當(dāng)前的狀態(tài)。綜上,無服務(wù)器產(chǎn)品從起步發(fā)展至今,從技術(shù)方案的細(xì)分發(fā)展十分明顯,而移動應(yīng)用則是無服務(wù)器技術(shù)支撐的技術(shù)產(chǎn)品和方案之一。(摘要、援引自 Top 5 Trends In Serverless Computing In 2021)
移動算力的「無服務(wù)器」
從移動端云服務(wù)歷史,到「無服務(wù)器」產(chǎn)品歷史和趨勢看,移動端只是「無服務(wù)器」技術(shù)支撐的產(chǎn)品形態(tài)之一。在移動端計算需求和「無服務(wù)器」技術(shù)交叉的領(lǐng)域中,存在很多的發(fā)展可能性。為了讓更多的移動端和小程序開發(fā)者能用上、用好「無服務(wù)器」云計算的優(yōu)勢,整個行業(yè)還有很長的路要走。面向移動端的云計算,我們把它們統(tǒng)稱「移動算力」。這類移動算力的需求,目前可以通過一些典型產(chǎn)品觀察和思考開發(fā)者的需求如何滿足。
以某云原生平臺為例,針對中國移動應(yīng)用生態(tài)的需求,該平臺結(jié)合消費者和數(shù)字化數(shù)字品牌傳播業(yè)務(wù)的行業(yè)知識和經(jīng)營積累,把該平臺作為移動應(yīng)用,特別是小程序的無服務(wù)器后臺服務(wù),提供以下技術(shù)能力:
彈性數(shù)據(jù)庫 云函數(shù) 觸發(fā)器 第三方支付(微信、支付寶......) 模版消息推送運營后臺豐富的 API(業(yè)務(wù) API、運營后臺 API)
而「按用量計費」和結(jié)算,對比利用傳統(tǒng)云計算后臺,開發(fā)者們可以避開繁瑣的云計算資源配置、管理和運維,只需要從上述清單所涉及的業(yè)務(wù)需求出發(fā),來考慮采購什么能力、需要多少成本以及怎樣開展持續(xù)的產(chǎn)品迭代和運營。
「細(xì)分」移動應(yīng)用與服務(wù)商的匹配
當(dāng)今的移動端應(yīng)用開發(fā)者選擇托管服務(wù)時,可選傳統(tǒng)的云大廠,也可以選擇混合云(例如通過云網(wǎng)融合的 PON 套餐),甚至選擇更傳統(tǒng)的物理服務(wù)器托管。
作為企業(yè)數(shù)字化負(fù)責(zé)人或 CIO,首要考慮的是你的移動端/小程序項目究竟是怎樣定位的?是否全面考慮過項目的定位?小程序產(chǎn)品本質(zhì)上是依賴大平臺的「領(lǐng)域社交網(wǎng)絡(luò)」和「領(lǐng)域業(yè)務(wù)接口」,來實現(xiàn)其日常用戶價值,例如,開發(fā)微信小程序可利用微信龐大的用戶群、成熟而豐富的接口功能,結(jié)合無所不在的微信支付來實現(xiàn)用小程序部分或全部替代企業(yè)的移動端服務(wù)。
在考察一個「無服務(wù)器」平臺提供的技術(shù)資源和服務(wù)套餐時,不能僅僅看它的「規(guī)?!?。因為「細(xì)分領(lǐng)域」需要「細(xì)分平臺」,更需要長期耕耘該領(lǐng)域的業(yè)務(wù)和技術(shù)團隊幫助,兩者結(jié)合才能真正發(fā)揮小程序產(chǎn)品以及配套「無服務(wù)器」技術(shù)的「1 + 1 > 2」效應(yīng)。我們推薦以下服務(wù)商評估指標(biāo):
有深度「領(lǐng)域細(xì)分」服務(wù)背景。例如,如果您開發(fā)的是面向 C 端消費者、品牌服務(wù)數(shù)字化的小程序,應(yīng)首選熟悉消費者和數(shù)字化品牌服務(wù)的供應(yīng)商; 有品牌數(shù)字化服務(wù)積累。例如,偏技術(shù)極客的團隊的「無服務(wù)器」產(chǎn)品往往缺乏對業(yè)務(wù)領(lǐng)域的匹配設(shè)計,導(dǎo)致過度設(shè)計和過度工程化,學(xué)習(xí)和使用成本高;而面向消費者的移動端托管服務(wù),需要對品牌營銷和社交網(wǎng)絡(luò)推廣有著深厚的行業(yè)積累。 有專注的開發(fā)團隊。這點是普通云大廠無法企及的,因為大機構(gòu)開發(fā)團隊往往「身兼數(shù)職」,內(nèi)部多個不同領(lǐng)域的項目同時壓著他們,精力過度分散。
版權(quán)聲明:
本站所有文章和圖片均來自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請勿用于商業(yè)用途,如果損害了您的權(quán)利,請聯(lián)系網(wǎng)站客服處理。