重磅釋出 | Serverless 應用中心:Serverless 應用全生命週期管理平臺
簡介:2022年5月9日,歷經 10 個月打磨和測試,Serverless 應用中心正式上線。阿里雲 Serverless 應用中心是一個Serverless 應用全生命週期管理平臺,旨在幫助使用者快速聯動雲上的上下游服務,輕鬆沉澱最佳實踐。
隨著 Serverless 架構的不斷普及與應用,Serverless 工具鏈體系的匱乏、更新/部署流程複雜、資源零散以及管理難度大等問題也隨之顯露。儘管 2020 年 11月,Serverless Devs 開發者工具的開源已經在一定程度上解決了工具鏈體系匱乏帶來的部分問題,但是開發者在實際工作中,以應用為中心,對 Serverless 架構進行整體的運維操作、對資源進行整體的管理行為,依舊面臨著挑戰。於是,建設一個可以幫助開發者在 Serverless 應用全生命週期發揮作用的應用管理平臺就顯得尤為重要。
2022年5月9日,歷經 10 個月打磨和測試,Serverless 應用中心正式上線。
這就是 Serverless 應用平臺
Serverless 應用中心是阿里雲 Serverless 應用全生命週期管理平臺。通過 Serverless 應用中心,使用者無需在部署應用之前進行額外的克隆、構建、打包和釋出操作,即可快速部署和管理應用。Serverless 應用中心幫助使用者快速聯動雲上上下游服務,輕鬆沉澱最佳實踐。
Serverless 應用中心開啟地址:http://fcnext.console.aliyun.com/applications/
Serverless 應用中心的釋出,一方面希望通過與 Serverless Devs 工具鏈的聯動,進一步實現和完善 Serverless 應用全生命週期管理能力,另一方面也希望通過 Serverless 應用中心可以幫助開發者,更快速的體驗 Serverless 架構,更簡單的上手和使用 Serverless 架構,更科學和直觀的管理 Serverless 應用。與此同時,Serverless 應用中心將會是 “Serverless On Serverless” 的一次嘗試,不僅作為新能力為開發者們提供更多的支援和便利,也將成為支援海量使用者使用 Serverless 架構,海量 Serverless 應用部署的,基於 Serverless 架構的最佳實踐。
Serverless 應用中心的目標
Serverless 應用中心,作為 Serverless 應用全生命週期管理平臺,在一定程度上承載了幾個重要的責任:
- 讓開發者,可以通過白屏化操作,更簡單、更方便、更快速的體驗和上手 Serverless 應用;
- 讓 Serverless 應用,可以以一種更為科學、安全與穩定的方法,進行開發、建立、更新以及運維、迭代等;
- 將傳統的資源以應用的維度進行聚合、管理,可以讓開發者真正意義上聚焦業務,聚焦應用,而不再是零散在不同產品頁面上的資源;
所以,Serverless 應用中心的初期目標,也就變的更為簡單和純粹:易用與好用。
一步開始 Serverless 之旅
Serverless 應用中心將會大大降低使用者在 Serverless 應用 OnBoarding 過程中的上手複雜度,通過白屏化的操作,開發者可以通過簡單的配置,快速創建出相對複雜的應用案例,而這些應用案例將會作為二次開發、學習和體驗的重要參考。
此處請點選連結檢視影片:
http://others-file-system.oss-cn-beijing.aliyuncs.com/appstore/202204102343.mp4
如影片所示,使用者只需要在應用頁面中,找到合適的應用點選建立按鈕,即可快速的進行應用的建立,應用建立完成之後會有相關的測試域名可供體驗。
目前應用中心已經提供了包括商城案例、音影片處理、Web 框架等近5個分類的超20款熱門應用的快速體驗,無論是 Django、Express、Flask、SpringBoot 等傳統框架的一鍵部署,還是 Zblog、Wordpress 等部落格、內容管理系統的快速建立和使用,再或者是 CDN 的備源、一鍵建立網盤/雲桌面、影片轉碼/切片/壓縮的極速體驗,Serverless 應用中心都可以幫助開發者一步開始 Serverless 之旅。
與工具結合的 1 到 n
除了快速建立模板應用,開發者也可以選擇通過 Github 等程式碼倉庫進行專案建立。
此處請點選連結檢視影片:
http://others-file-system.oss-cn-beijing.aliyuncs.com/appstore/202204102343%281%29.mp4
如影片所示,當開發者選擇通過 Github 程式碼倉庫進行專案的建立之後,Serverless 應用中心不僅會建立應用本身,還會將應用程式碼放到指定的程式碼倉庫中,這樣開發者就可以基於該案例/模板,進行專案的二次開發等。
值得一提的是:
- 所有基於 Serverless 應用中心建立的應用,都是符合 Serverless Devs 規範的應用,即開發者可以通過 Serverless Devs 開發者工具對應用進行開發、除錯、部署等相關操作;
例如開發者 Clone 放在指定倉庫的應用,在本地進行開發和多模除錯(本地除錯、端雲聯調、雲端除錯等),完成之後可以通過將程式碼推送到程式碼倉庫或者建立 Release,實現業務的更新。
- Serverless 應用中心不僅可以快速建立模板應用,通過案例應用進行參考和二次開發,還可以直接匯入已有的,且符合 Serverless Devs 規範的應用,將已有的應用託管到應用中心,進而體驗 Serverless 應用中心的相關功能。
以應用維度的資源管理
眾所周知,Serverless 應用往往會涉及到諸多的產品,例如資料庫資源、訊息中介軟體資源、物件儲存、日誌服務等資源,換句話來說,一個完整的 Serverless 應用,通常都是 FaaS 產品與諸多的 BaaS 有機結合,因此,Serverless 的使用者往往會面臨著管理諸多資源的問題,而這些管理的資源往往又在不同的產品頁面,對後期的管理、運維等都帶來的極大的不便,不小得複雜度。
如下圖所示,Serverless 應用中心將會以應用維度進行資源的展示和管理:
通過以應用維度的建立、更新等操作,通過以應用維度的資源展示與管理,Serverless 應用中心將原本分散的資源進行了進一步抽象,通過應用維度使得開發者可以更清晰、直觀的對自身應用進行運維、管理等。
實現
正所謂敢於自我嘗試,才有可能服務好更多開發者,在阿里巴巴內部,儘管已經有大量業務採用 Serverless 架構實現,但是,在我們眼中依舊不夠"典型",如何“Serverless On Serverless”,讓 Serverless 架構不僅僅可以在內部有大量應用,服務其他行業/業務,也要讓 Serverless 架構可以為團隊自身創造更多的價值,於是,Serverless 應用中心就成為了一個出生在 Serverless 架構,成長在 Serverless 架構的雲原生應用。
Serverless 應用中心,基於 Serverless 架構自身的極致彈性特點,通過 FaaS 產品與 BaaS 產品的有機結合,花費了極少的時間和代價,構建出了一套可用性極高,費用極低的高性價比,高可用的後臺服務。
通過 HTTP 觸發器(API 閘道器),基礎業務函式將會接收使用者在客戶端發起的請求,以及 Github 等程式碼倉庫送來的 WebSockets 通知,對這些資訊進行基礎的處理(包括不限於許可權鑑定、身份認證等相關操作),然後通過訊息中介軟體(部分事件並不會通過訊息中介軟體),將不同的事件送達到不同的業務函式中,並進行業務的處理,如果有建立、更新等部署相關事件,則會進一步的下發到部署函式中,進行業務的部署,在整個流程中,會不斷的有元資料、快取資料、日誌資訊等通過 Proxy 模組,儲存到對應的 BaaS 產品中。
在整個專案構建的過程中,業務同學只需要設計好整體架構,以及對相關的業務函式進行開發和部署即可,專案中的 BaaS 產品的運維、FaaS 產品的彈性,均由平臺實現和負責,一方面可以讓開發的同學付出更多的精力在更具價值的業務邏輯之上,另一方面也可以打大大提升業務的研發效能,加快業務創新迭代效率,縮短專案上線釋出週期。
當然,關於 Serverless 應用中心,如何實現“Serverless On Serverless”這個部分,我們會在之後的技術分享和文章中進行更為詳細的分享。
Roadmap
儘管 Serverless 應用中心已經發布了 Beta 版本,但是仍然存在一定的不足,目前相關的研發同學也正在不斷的完善和優化中,當然,我們還又很多功能等待更新和進一步完善,包括不限於:
應用建立:
- 支援更多程式碼倉庫:
- Gitee
- Gitlab
-
Codeup
-
支援更多的觸發方案:
-
Github Action 觸發
- 雲效觸發
- Jenkins 觸發
應用管理:
- 應用刪除能力
- 應用維度監控與告警能力
- 應用維度的資源編輯能力
- 線上應用編輯能力
- Serverless Devs 開發者工具與應用中心聯動能力
另外,對正在體驗或者已經體驗了應用中心的同學,也歡迎及時和我們反饋更多的意見和看法,可以通過留言或者填寫我們的調研問卷 ,進一步和我們取得聯絡,我們相信大家一起參與的專案,才能更好的為大家服務,因為每個人都是工具的主人,都是 Serverless 應用中心的主人。
本文為阿里雲原創內容,未經允許不得轉載。
- 科學地花錢:基於端智慧的線上紅包分配方案 (CIKM2020)
- 如何正確的做增量加工
- Apsara Stack 同行者專刊 | 政企混合雲技術架構的演進和發展
- 為什麼生命科學企業都在陸續上雲?
- 雲上彈性高效能運算,支援生命科學產業高速發展、降本增效
- 阿里雲易立:雲原生如何破解企業降本提效難題?
- 程式碼註釋的藝術,優秀程式碼真的不需要註釋嗎?
- 團隊管理|如何提高技術Leader的思考技巧?
- 現代斗山X瓴羊:“一橫四縱“解決方案聚焦中臺場景級部署
- 618 大促來襲,淺談如何做好大促備戰
- EasyNLP帶你玩轉CLIP圖文檢索
- Java 應用壓測效能問題定位經驗分享
- 非同步任務處理系統,如何解決業務長耗時、高併發難題?
- 如果有一天不做前端了,我會做什麼?
- 阿里雲混合雲建管用一體化探索實踐 助力政企從容應對數字化轉型難題
- 阿里可觀測性資料引擎的技術實踐
- 全面升級!揭祕阿里雲智慧Logo設計的AI黑科技
- 看見雲上新力量|專訪快準車服CIO牛小虎:全面資訊化支援,讓車愛上快準
- 《阿里雲程式碼安全白皮書》5個維度應對3類程式碼安全問題
- 優化搜尋排序結果從而“ 提升CTR、CVR業務指標”