Serverless 是由云基礎(chǔ)設(shè)施服務(wù)提供商 Iron.io 副總裁 Ken 在 2012 年提出的概念,為云中運行的應(yīng)用程序描述了一種全新的系統(tǒng)體系架構(gòu)。此后,眾多云服務(wù)廠商將 Serverless 概念逐步落地,陸續(xù)推出了基于 Serverless 的 FaaS(函數(shù)即服務(wù))產(chǎn)品。經(jīng)過 8 年的發(fā)展,Gartner 報告顯示 2020 年全球已有 20% 的企業(yè)采用 Serverless技術(shù)部署業(yè)務(wù)。Serverless 架構(gòu)已被業(yè)內(nèi)認為是引領(lǐng)云原生下一個十年的發(fā)展潮流。 

傳統(tǒng)的業(yè)務(wù)如網(wǎng)站、后端服務(wù)等,通過現(xiàn)代化的 Serverless 技術(shù)能夠讓開發(fā)者無須關(guān)心服務(wù)器搭建和管理,只需編寫業(yè)務(wù)代碼和調(diào)用云平臺原生提供的云能力,就可以快速搭建完整的業(yè)務(wù)應(yīng)用,降低開發(fā)成本,提升開發(fā)效率,同時在服務(wù)器和系統(tǒng)管理方面節(jié)省資源。

國內(nèi)的 Serverless 生態(tài)建設(shè)起步較晚,隨著微信和騰訊云共同開發(fā)的小程序云開發(fā)的推出,帶來了超過100萬開發(fā)者使用,大力普及了對Serverless的認識。然而市面上相關(guān)的工具鏈并不完善,這導致用戶在遷移至 Serverless 架構(gòu)的過程中面臨開發(fā)和部署難度大、成本高等問題。

云開發(fā)CloudBase Framework 就是為了解決這些問題而生。 

據(jù)介紹,云開發(fā)CloudBase Framework 是一款由騰訊開源的云原生一體化部署工具,支持前后端應(yīng)用一鍵部署,能夠幫助開發(fā)者快速將應(yīng)用無縫部署在 Serverless 架構(gòu)的云開發(fā)(FaaS + CaaS + BaaS)平臺上,享受免運維、高性能、高可靠性、可彈性擴縮容的的應(yīng)用體驗。目前該項目已支持一鍵部署網(wǎng)站、Next SSR、Node、Dart、Deno 等應(yīng)用。

Github開源地址:https://github.com/Tencent/cloudbase-framework

云開發(fā)CloudBase Framework 的主要特性是其首創(chuàng)的前后端一體化一鍵部署功能。傳統(tǒng)業(yè)務(wù)如網(wǎng)站、服務(wù)端等在遷移至云平臺的過程中存在不小的改造成本,同時一個完整業(yè)務(wù)應(yīng)用的前后端往往因為語言技術(shù)棧不同,在應(yīng)用交付方式上也存在諸多限制。

而云開發(fā) CloudBase Framework 支持 web/小程序/移動端/服務(wù)端的一體化部署,可一鍵托管的技術(shù)棧涵蓋幾乎整個大前端領(lǐng)域,包括前端框架 Vue、React,SSR 框架 Nuxt,基于 Node 的 Express、Koa ,基于 Deno 的應(yīng)用等;借助底層 Serverless 云應(yīng)用的能力,還可以部署基于 PHP、Java、Go 等語言技術(shù)棧的后端應(yīng)用。值得一提的是,CloudBase Framework 還配合 Flutter 實現(xiàn)了 Dart 語言的云端一體化,這也是國內(nèi)云廠商對 Dart 語言和生態(tài)的一大補充。

在降低用戶使用門檻方面,云開發(fā)CloudBase Framework 實現(xiàn)了自動檢測的功能,即針對常見前端框架,用戶無需自己編寫配置,使用該工具可以實現(xiàn)自動識別項目的構(gòu)建和發(fā)布默認配置。使用過程中,開發(fā)者不需要學習復雜的服務(wù)器配置和更改代碼,只需要輸入業(yè)務(wù)參數(shù)即可實現(xiàn)項目部署。

在持續(xù)集成/持續(xù)部署方面,云開發(fā)CloudBase Framework 還可搭配 CI/CD 工具實現(xiàn)持續(xù)部署,例如只需要幾行代碼就可以實現(xiàn) Github 自動推送部署應(yīng)用前后端,同時開發(fā)者也可以在 CI/CD 過程中增加手動確認步驟來 Review 發(fā)布過程。

值得一提的是,項目團隊還圍繞云開發(fā)CloudBase Framework 構(gòu)建了一套完善的開發(fā)者生態(tài),提供了應(yīng)用中心和插件體系。

應(yīng)用中心擁有各類熱門應(yīng)用,以及大量的生產(chǎn)級項目模板,案例模板,開發(fā)者可以自由選擇,并將項目一鍵部署到云開發(fā)。另一方面,開發(fā)者也可以自己開發(fā)并提交應(yīng)用和模板到應(yīng)用中心,只要為應(yīng)用編寫描述文件,支持使用云開發(fā) CloudBase Framework 部署,通過審核后就可以上架應(yīng)用中心,供其他用戶使用。

云開發(fā)CloudBase Framework 的插件體系則是完全開放的。目前生態(tài)內(nèi)已經(jīng)有十幾種不同的插件,自下而上分別實現(xiàn)了包括云資源插件、語言開發(fā)插件、應(yīng)用框架插件,以及第三方應(yīng)用插件。開發(fā)者可以按照插件規(guī)范自由組合,通過使用插件和復用插件來實現(xiàn)不同功能的插件。例如 Node 插件復用了云函數(shù)插件和云托管插件;低代碼開發(fā)插件復用了小程序插件、靜態(tài)網(wǎng)站插件、云函數(shù)插件、鑒權(quán)插件、數(shù)據(jù)庫插件等。

據(jù)悉,云開發(fā)CloudBase Framework 云原生一體化部署工具已經(jīng)在騰訊內(nèi)外超過 1000 個應(yīng)用中落地,包括企業(yè)微信、騰訊直播、騰訊健康碼、云開發(fā)平臺、心悅俱樂部等用戶規(guī)模龐大的主流業(yè)務(wù),實用性與穩(wěn)定性得到了充分的驗證。

云開發(fā)CloudBase Framework 團隊表示,現(xiàn)在項目已經(jīng)實現(xiàn)了一體化的部署工具,下一步的規(guī)劃是繼續(xù)完善插件體系、運行時庫,完善生態(tài),實現(xiàn)更加高效的開發(fā)部署工作流。同時,團隊也歡迎廣大開源技術(shù)愛好者參與進來,貢獻代碼、文檔或是測試 Demo,共同完善國內(nèi)的云原生技術(shù)生態(tài),共建美好開源社區(qū)。

分享到

songjy

相關(guān)推薦