云廠商的細分戰場——Serverless
2019-04-20 12:44:31 雷鋒網
騰訊云李成熙表示,“前端全棧開發的模式,從前端做到后臺,類似過去的Web移動工程師大包大攬,所以就需要云廠商提供云開發解決方案,傳統開發模式一方面要開發前端和后端的邏輯,還要處理所有的運維,靠一個人是不可能的,所以才有了現在傳統分工模式,就是前端、后臺、運維。”
如果業務實現云開發,開發人員關心的只有一小部分,主要是業務邏輯。只要工程師能夠懂Java和node.js,基本上就可以把服務穩定、性能卓越和有一定安全性的小程序應用獨立開發出來。通過云開發的開發模式的推動,真正可以實現前端工程師全棧開發的一個理想的模式。
有觀點認為,FaaS(Function as a service,函數即服務)等同于Serverless,相比傳統劃分的基礎設施即服務(IaaS),平臺即服務(PaaS),軟件即服務(SaaS),FaaS更細分,目前業內提供FaaS的云廠商主要包括AWS Lambda,微軟、阿里云和騰訊云等,總體來說Serverless還處于發展初期,但是潛力巨大。
云服務的終極目標就是直接提供服務,Serverless就是開發人員的理想環境,現在的云服務還不是云計算最初被設想的形態,整個行業都在一點點接近。
前端技術的發展
前端的技術近幾年發展非常迅速,可以從兩個維度去看前端技術的發展——一個是前端復雜度,一個是應用的廣度。
單看復雜度,從HTML、JS、CSS的階段向DOM操作框架,從DOM到MVC,再到MVVM框架,再到現在assembly技術標準的出現,讓前端工程師開發復雜度應用的能力不斷提高。而從廣度來看,前端也一直在拓展,從瀏覽器到服務器端,再到移動端,小程序,前端邊界在不斷擴大。然而在這個發展的過程中,有一個很深的隔離,這個隔離本質上就是物理隔離,比如前端和后端,存在手機和服務器之間的物理隔離。而serverless,函數即服務對前端來說,后端服務是一個函數,函數就是前端代碼的一部分,后端服務和前端完全融合在一種代碼體系里去。從這個層面來說,severless打破了物理隔離,幫助前端真正做到了全棧。騰訊云TVP、Layabox合伙人李明表示,在傳統開發模式下前后端、運營溝通成本非常高,Serverless確實是未來研發團隊都應該考慮的一個新的選擇方向。但自行探索或許成本比較高。如果把這個事情交給前端開發,對于他們來說有學習運維和后端的成本;若交給后端開發,對于他們來說其實又沒有任何關系。如果交給云廠商呢?這或許是一個不錯的選擇。因為這樣的話,大家都可以專注于自己的業務,也不需要花費大量時間和精力學習額外知識,從而提高產品研發團隊的整體效率。
貓眼資深工程師高英健也提到,貓眼在運營工具的實際開發過程中,由于項目主要用于配置日常運營活動,與后端核心邏輯沒有任何關系,后端也不想主動配合。這種情況下借助騰訊云推出的大前端Serverless產品——云開發,讓前端通過調用API的方式實現后端業務邏輯,對于前端開發效率有很大的改善,邏輯、數據、資源均由前端工程師包辦,降低開發門檻,提升開發效率。
傳統模式到Serverless模式的難點
騰訊云TVP、友浩達科技CTO張善友 認為,Serverless需要統一的行業標準。目前Serverless服務廠商眾多,但各自都是獨立的玩法,目前若想從A服務商遷移到B服務商,成本高、難度大。若一套Serverless代碼能夠在騰訊、阿里、微軟、亞馬遜等云服務上都能運行,足以降低遷移成本,有效降低客戶使用Serverless服務前的顧慮。
騰訊云TVP、北京竹間科技技術負責人朱峰 認為,從重構的角度來看,Serverless無法做到真正的技術重構,后端仍然是冗雜的面向過程函數不便于管理。如果能解決重構的問題,才能真正地降低使用門檻。
另外,數據安全仍然是大部分嘉賓的一個主要關注點,而這個問題的本質是公有云數據安全的問題。有意思的是,云開發模式下,每個用戶的環境資源是獨立的,也即是私有的,并且云開發提供與自有數據庫打通的能力。這樣,用戶的數據都存在用戶自己的云開發環境資源下面,一定層面保障了用戶的數據安全與穩定性。
此外,從傳統模式到Serverless模式的轉變,阻力還有錯誤排查問題,無法跨云等問題,這也導致很多業務無法直接從傳統模式向serverless模式遷移。
Serverless開發者如何改變?
即速應用后臺開發工程師提到,在Serverless下,前端和后臺結合的話,他們操作后臺給出的數據,包括創造數據,改數據等,這完全是數據層面的操作,而不僅僅是UI層面,不只是UI的性能問題;同時還要考慮后端的一些數據的性能問題,還有特殊的后端需要使用的模式,比如隊列、定制任務。這就有可能分化成兩個后臺,有的做serverless服務,有的做serverless工具和技術建設。
Node js核心成員張秋怡說到,未來前后端將趨近于系統化、全棧式,按照這種發展模式勢必會帶來思維的轉變,前端需要考慮后端,后端需要考慮前端,慢慢形成一個完整的產品開發模式,Serverless的出現則很好的順應了這種新開發模式的發展,我們需要做好準備迎接這一大趨勢。
凹凸實驗室核心成員馬劍從團隊分工角度提到,這些年在組建團隊的時候,我們前端做一些事,后端用node來解決很籠統的場景。但是再往后發展,我們發現過去前端同學做node,或者node的同學做前端,其實都是不專業的。所以發展到今天,我們團隊內部也是細分了UI開發的一波人,專業做后端服務的一波人,順著這個思路往下發展,大前端Serverless一定也是會繼續拆分的,即使Serverless做得再好,一定會拆分出來一波人專業在搞,可能另外一波人還是搞業務開發了。
關鍵詞: 云服務器