天天看點

剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

這就是 Serverless Devs

Serverless Devs 是一個開源開放的 Serverless 開發者平台,緻力于為開發者提供強大的工具鍊體系。通過該平台,開發者可以一鍵體驗多雲 Serverless 産品,極速部署 Serverless 項目。

Serverless Devs 包含 Serverless Devs Tool (Serverless 開發者工具)和 Serverless Devs App Store(Serverless 應用中心):

1、Serverless Devs Tool 是一款可以讓 Serverless 開發者的開發和運維效率翻倍的工具。通過使用該工具,開發者可以更簡單、更快速的進行應用建立、項目開發、測試、釋出部署等,實作項目的全生命周期管理。

2、Serverless Devs App Store 是一個集 Serverless 應用線上搜尋,一鍵部署以及資源可視化編輯于一體的應用中心産品。應用中心擁有海量的生産級項目模闆,案例模闆,開發者可以自由選擇,并将項目一鍵部署到指定的雲平台上。

剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

Serverless Devs 的開源為國内外開發者提供了 Serverless 工具的新選擇,讓開發者以更短的路徑體驗到多雲Serverless 産品,以更快的速度建立和部署 Serverless 應用,以更簡單和更自動化的方法進行項目管理和運維,Serverless 項目通過該平台完成全自動化後,可節省 99.9% 的管理成本。

Serverless 工具鍊之困

Serverless 正在改變未來軟體開發的模式和流程,并被預測将引領雲計算的下一個 10 年,但盡管如此,開發者在選擇使用 Serverless 時仍有諸多擔憂,這其中最受關注的無疑就是工具鍊體系的匮乏。

所謂的工具鍊匮乏,一方面表現在市面上工具鍊不完善,這導緻開發和部署難度大,進而增加成本;另一方面表現在,缺乏相關的工具鍊在體驗層将 Serverless 體驗進一步規範,優質工具鍊的匮乏導緻本來就擔心被廠商綁定的Serverless 開發者變得更難與廠商解綁。

前不久,中國資訊通信研究院釋出國内首個《雲原生使用者調查報告》明确指出在使用 Serverless 架構之前,49% 的使用者考慮部署成本,26% 的使用者考慮廠商綁定情況,24% 的使用者考慮相關工具集完善程度,這些資料背後透露的實際上是:開發者對于完善工具鍊的強烈需求。

Serverless Devs 的優勢

Serverless Devs 幫助解決目前的工具鍊之困,讓開發者一鍵體驗多雲産品,極速部署 Serverless 項目。

可支援主流 Serverless 服務/架構

Serverless Devs 是一個元件化與插件化的 Serverless 開發者平台,開發者可以在平台中可插拔式的使用不同 Serverless 的服務和架構,同時可參與元件和插件的開發。無論是工業級的 Serverless 服務,還是各類開源的 Serverless 架構,Serverless Devs 都可友好支援。開發者無需對市面上每一款 Serverless 工具進行研究和學習,隻需通過 Serverless Devs ,就可以簡單、快捷的“上手”主流 Serverless 服務和架構。

可視化編輯和部署

Serverless Devs 擁有可視化編輯和部署流程。在 Serverless Devs App Store 中,使用者可以通過關鍵詞快速檢索所需的應用案例或元件,并且通過可視化編輯完成項目配置,通過滑鼠點選即可完成項目部署。

剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless
剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

無論是進行項目體驗,還是進行項目開發、運維,在應用中心的加持下,在可視化編輯和部署的加持下,Serverless 項目的整體部署時間縮短了近 1 倍。同時,Serverless Devs App Store 也是一個開發者開源共建的平台,所有使用者都可以在應用中心釋出自己的元件和應用供更多人學習、參考以及使用。

靈活與開放的使用方法

與絕大部分的開發者工具不同的是,Serverless Devs 在進行項目描述時不僅僅可以對函數計算、API 網關、對象存儲等資源進行描述,也可以通過 Serverless Devs 提供的插件以及 Hook 進行 Install、Build、Publish 等行為描述。與此同時 Serverless Devs 不會對每個元件的指令進行限制,而是鼓勵開發者針對不同的元件,開發不同的能力來應對更多、更複雜的場景,以阿裡雲函數計算元件為例,它不僅僅支援函數的部署和移除這樣的傳統能力,還支援日志查詢,名額查詢,本地建構,依賴安裝,調試等更多定制化的能力。

Serverless Devs 的這種靈活與開放的使用方法,可以在自動化部署、運維等領域發揮非常大的作用,将 Serverless Devs 與項目全生命周期進行有機融合,使得 Serverless 項目的開發運維效能提升 90%。

像使用手機一樣玩轉 Serverless

通過 Serverless Devs,我們可以像使用手機一樣的使用 Serverless。在使用手機時,我們需要通過在手機應用市場中搜尋、下載下傳各種應用,并安裝到手機中進行使用;對于 Serverless Devs 開發平台來說,我們可以通過 s gui 快捷調出 Serverless Devs App Store,并在其中搜尋并下載下傳元件/插件到 Serverless Devs Tool 開始使用 Serverless,如圖所示:

剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

使用場景

Serverless Devs 可參與到項目的建立、開發、調試、部署與運維的全流程中,以阿裡雲函數計算元件為例:

剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

1、在項目的建立階段,可通過指令行工具或者應用中心進行項目的最初建立;

2、在項目開發過程中,可以通過本地開發、調試等能力來驗證本地開發的正确性;

3、在項目調試的環節,可以通過本地調試與遠端調用、日志查詢等能力,來進行項目的最終調試;

4、在部署環節,可以先通過依賴安裝、項目建構等流程建構出完整的部署包,再進行項目的部署;

5、在後期運維環節,可以通過名額查詢來進行項目健康度檢查,通過日志查詢等來進行問題定位,通過項目釋出等能力進行版本釋出,别名釋出以及灰階釋出等;

未來規劃

2020 年 10 月,完成阿裡雲函數計算元件的全部能力建設;

2020 年 11 月,完成代号“130”計劃,一個月内完成 30 個 Web 架構/CMS 的支援,包括不限于 Django,Express,Flask,Koa,Egg,Nuxt,Next 以及 Webpy 等項目的一件遷移能力;

2020 年 11 月,完成代号“32100”計劃,3 周 21 天,讓 Serverless Devs App Store 擁有 100 個元件/應用,可以覆寫人工智能、大資料、Web 開發、監控告警等多個領域,并且這些内容全部開源;

2020 年 12 月,推出全新疊代版本;

2021 年 1 月,完成代号“88“計劃,8 周完成 8 個雲平台的函數計算等相關能力的支援,可以通過 Serverless Devs Tool 快速把項目部署到阿裡雲等多雲平台,甚至某些元件,隻需要修改 provider,就可以實作多雲部署;

2021 年 3 月,完成 VScode 插件、雲 IDE 等支援,通過編輯器、GUI 形式,使用 Serverless Devs

參與貢獻

Serverless Devs 的開源為國内外開發者提供了 Serverless 工具的新選擇,讓開發者可以以更短的路徑體驗到多雲 Serverless 産品,以更快的速度建立和部署 Serverless 應用,以更簡單和更自動化的方法進行項目管理/運維,未來期待更多開發者參與共建。

目前代碼已經在 Gitee(碼雲)和 GitHub 上正式開放:

Github 位址:

https://github.com/serverless-devs

Gitee 位址:

https://gitee.com/organizations/serverless-devs/projects

Serverless Devs 官網:

https://www.serverless-devs.com
剛剛!阿裡開源首個 Serverless Devs 平台,讓開發者像使用手機一樣玩轉 Serverless

繼續閱讀