天天看點

雲端研發新基建:Serverless 與持續架構服務落地實踐

在《 我心中的雲時代原生開發環境

》這篇文章中,我們探讨過雲廠商的願景,雲計算的趨勢與現狀以及研發團隊的架構服務訴求等背景。今天,我想結合我們打造的雲開發平台(Cloud Workbench)跟大家進一步聊聊,如何打造全雲端研發的新基建,去服務好研發團隊和使用者。

雲時代創新核心要素

首先,讓我們快速将視野放大到社會商業爆炸式增長的雲時代,無論是創業公司還是發展中的公司,都希望能有一個低成本、可持續支撐的架構服務,幫助自己的業務持續發展,使用者流量從小到大,無需變更架構,更不用中斷業務。

這種架構服務訴求背後的核心痛點展現在業務快速試錯與流量快速增長之間的沖突。如果從傳統的架構方式去思考,這個問題很難調和:如果要快速奔跑,就沒有時間好好思考設計架構;如果架構設計不好,就無法支撐未來巨大的流量;而如果花時間把架構設計好再動手,就沒辦法快速奔跑,很可能錯過一個商業創新的時間視窗。另外,還有一個未知的疑問,這個設計好的架構真的夠好麼?

結合我們之前的探索實踐,我們知道,借助雲原生 Serverless 的能力:實時彈性、按量付費,正好可以幫助我們把上述問題提升到一個新的次元去解決:業務完全可以放飛自我快速奔跑,架構服務由雲原生Serverless矩陣來提供,保證流量再大也不怕。

中小研發生态現狀

基于上述的一個判斷,我們認為,現代商業社會的啟動過程:從一個 idea 的誕生,到快速試錯,再到上線服務使用者的過程,有了一個很好的方案去支撐。但是,就像布道師們經常講的一句話,人人都在談雲原生 Serverless,實際上并不是人人都知道怎麼落地 Serverless。我們不妨來看幾個真實的創業公司案例。

案例一,天貓精靈技能業務

天貓精靈的技能應用開發本身與天貓精靈開發者平台之前的連接配接較為松散,技能應用的開發對于一個中小開發者而言,啟動成本較高。開發技能應用過程中的技術棧和方案也因人而異,因團隊而異,也由于廣大的開發者對技能應用背後的大流量沒有一個一緻的高水位保障,使得天貓精靈平台在做推廣的時候也經常遇到阻力,擔心在推廣之後,很多技能無法承載大量湧入的活動流量,反而影響活動效果;

案例二,某直播互動健身創業公司

Y 公司是一家面對面直播互動健身的創業公司,研發團隊的構成有 2 個前端、2 個後端、1 個架構師、1 個 iOS、1 個産品經理、1 個設計師,産品的構成有微信小程式、iOS APP、Android APP、PC 端 WEB 應用;

目前的核心痛點及訴求:

  1. 研發成本、架構人員的浪費;(這已經算是幸福的煩惱了,很多公司是找不到合格的架構師的)
  2. 新人落地的成本(每個新人都有 3 個月的熟悉環境、流程、業務的成本);
  3. 自研自建業務架構的成本,要等業務架構确定後才能動手;
  4. 業務線切換的沉默成本比較高,如新業務啟動到上線:技術架構的選型、服務的複用等等都是損耗;
  5. 運維成本,如:承接推活動來的高峰流量以及平時流量的平均成本;

案例三,某軟體外包服務商

O 公司是一家 base 杭州的軟體外包服務商,他們的研發團隊構成為:5 個 Java、4 個前端、1 個iOS、1 個Android、1 個産品經理、2 個測試、5 個商務、6 個品牌、2 個 UI 設計;

  1. 10人以下規模來什麼做什麼,沒有沉澱,沒有辦法複用,沒有高的盈利回報,人都鋪在業務上,沒時間學習架構,進入了一個惡性循環,需要一個很低的成本去采用一個先進的技術架構方案,確定不落伍,同時可以繼續聚焦業務開發;有了可複用的空間(如架構、元件、服務)才有盈利的空間。10人以下的外包公司,CTO是不太可能去招的,40萬一年的話,公司一半的利潤就沒了;
  2. 想依托于雲,不過每家雲廠商都産品衆多,圍繞自己的業務怎麼知道有哪些産品适合,要一個個去挑選、學習,整體成本太高;

核心要解決的問題以及産品化思考

我們将上述調研的客戶回報訴求進行梳理,可以歸納出以下幾點訴求:

人員、業務盡可能做到快速啟動,低成本啟動。開發人員能夠快速進入業務開發,架構師能省就省,業務能夠基于行業現有解決方案、基本業務架構、業務子產品盡快啟動;

開發人員的時間盡可能投入到業務開發中,但同時要保證業務所用技術架構的先進性:一個人的時間是恒定的,如何幫助中小企業把人員投入業務的時間從60%提高到99%,同時還能確定業務背後所用的技術棧及技術架構是行業内廣受認可的;

線上業務能夠做到按量付費:1、業務的流量高峰不會成為業務增長的瓶頸;2、類似于外包服務商/ISV,可以為他們的客戶靈活制定彈性的服務體系;

基于以上三點,我們進一步抽象使用者群體以及場景和服務政策:

主要使用者群體

中小體量研發團隊及創業公司研發團隊;

要做開發生态的業務或平台;

行業軟體/解決方案ISV/服務商;

場景和服務政策

1、在快速商業化試錯的創新創業場景下,通過內建設計以阿裡雲 Serverless 産品線為矩陣的業務架構,幫助使用者快速疊代業務,同時保證業務上線後無需變更架構就可以持續支撐不斷增長的流量,確定業務不中斷,提高試錯效率,降低試錯成本;

2、在研發人員需要支援多業務線切換排程的場景下,通過內建雲效研發協同底座的能力建構線上研發團隊,通過設計解決方案執行個體化的能力建構統一應用開發環境,降低開發者在業務切換中的沉默成本,讓開發者可以快速且專注地進入業務邏輯的開發,提高研發效率;

3、在需要快速啟動業務的場景下,通過建構三套業務環境,幫助使用者實作環境線上,降低環境準備的時間成本與投入成本;

4、為研發團隊提供一種将應用開發方法和結果抽象成标準的格式化的解決方案的能力,用該解決方案統一快速地教育開發者;

定義了使用者群體、問題、場景以及服務政策之後,我們開始嘗試去定義這個産品:

我們要去打造一個全雲端研發工作的平台,以業務、研發任務為使用者界面,使用者對雲産品的感覺盡量保持并限制在必要的情況之下,但是平台要在背後為他們提供一系列先進的雲原生Serverless架構服務,同時,具備讓使用者的團隊、環境、代碼、協同等等實作線上的能力,幫助目标使用者群體省錢、省時、可持續發展。

核心技術方案

作為一個面向使用者業務視角而非雲産品或任何單項研發能力視角的設計,背後就必不可少的要跟非常多的系統、産品、能力進行內建;并且,要達成與使用者業務視角的關聯,又需要額外設計一套核心應用模型去支撐。這裡,我們通過兩個架構設計,向大家闡述我們的實作思路與方式。

系統內建架構

雲端研發新基建:Serverless 與持續架構服務落地實踐

認同線上協同是大趨勢。我們把自己定義為大協同領域的一環,最好能夠依托于一個更具全局性的團隊線上協同底座去建設,我們與雲效合作共建,基于一個共同的團隊模型以及資料去設計實作不同的領域能力。

原子研發能力分布廣泛,以代碼為主線進行串聯設計,在開發者使用者路徑中,我們與 Codeup、Flow 等産品進行內建,與經濟體共建 IDE 內建,共同推出 CloudIDE,為開發者提供從雲上代碼托管到雲上研發,再到雲上 CICD 的一站式服務;

解決方案執行個體化架構

用技術語言來描述的話,可以把解決方案執行個體化架構核心要解決的問題了解成将一個行業應用的開發經驗進行 “序列化” 與 “反序列化” 的過程。

我們與 OAM 團隊合作,以 OAM 為規範,對構成一個行業應用的研發環境以及依賴資源進行格式化、規範化的描述,生成一個雲開發平台所能了解和認識的解決方案,這是“序列化”的過程;

當雲開發平台去解析一個解決方案,核心會做兩件事情,一是分析和生成一個基于阿裡雲産品矩陣構成的雲原生 Serverless 架構,另一件事情是将依賴的資源做打包上傳等預處理;然後開始生成任務,逐一進行生産、建立、安裝,直至一個行業應用被初始化完成,這是“反序列化”的過程;

通過這種設計,我們實作了雲開發平台最為核心的能力:

幫助行業開發生态格式化、規範化地沉澱經驗;

幫助行業開發生态快速分發、複制行業應用開發經驗;

幫助行業開發生态無縫更新至先進的雲原生Serverless架構;

阿裡雲雲開發平台正式上線服務

2020 年 4 月 23 日,阿裡雲雲開發平台聯合天貓精靈智能應用平台共同釋出,上線雲開發服務功能;2020 年 4 月 28 日,阿裡雲雲開發平台聯合阿裡前端委員會 Serverless 小組,共同釋出基于 Ali Midway FaaS 架構的前後端一體通用 NodeJS 解決方案。2020年5月28日,與阿裡巴巴雲原生團隊合作推出基于 SpringCloud、MSE 的微服務應用開發解決方案,輕松将微服務開發并部署在 Serverless 平台之上,幫助開發者以 0 啟動成本、基于雲原生 Serverless 架構服務,3 分鐘極緻效率,完成一個标準技能應用的建立和部署。

在 Roadmap 中,還有小程式、大資料等場景解決方案将陸續上線。

感受雲開發平台的極緻特性

1 個開發界面

  • 打開浏覽器就能開發
  • 不管你用什麼裝置,電腦、手機、平闆
  • 不管是什麼作業系統,Windows、MacOS、Linux、Android、iOS

1 套統一的業務環境

  • 統一的雲上開發和業務環境(支援 NodeJS,Java,PhP,Python, C# 等主流語言)
  • 登入即完成配置,無需等待,專注業務創新
  • 遠端協同開發、所測即所得、測完即上線

1 個領先的架構

  • 基于業界領先的 Serverless 架構
  • 最快 1 秒鐘部署
  • 按量付費不浪費,自動擴容不當機

N 個行業應用場景

  • 解決方案模版化
  • 最快 3 分鐘上線一個行業應用(通用 WEB 應用,AIoT 應用,微服務應用等等)
  • 99% 時間聚焦在業務,開發更專注

了解雲開發平台的運作方式

雲開發平台是一個可以滿足開發者、研發團隊完全基于「雲+浏覽器」就能完成日常開發工作的環境。它的設計理念是使自己成為團隊大協同中的一環,它會跟阿裡雲諸多研發能力和工具進行內建,比如:雲效企業協同底座、CloudIDE、Codeup、Flow 等等,籍由強大的阿裡研發生态,為使用者提供更大的協同研發可能,使用者可以在使用雲開發平台的時候,根據業務的需要,主動選擇去開通使用更多類似于項目管理、需求管理、文檔管理等其他服務。

同時,為了幫助使用者提供一個無縫應用阿裡雲服務的環境,雲開發平台會跟阿裡雲的諸多雲産品進行內建,随時為使用者的使用而準備;使用者可以在雲開發平台建立基于各種場景解決方案的應用,并為每個應用選用不同的雲服務,這些雲服務會開通在使用者的阿裡雲主賬号之下,使用者主動開通的各種雲資源會按照使用者的使用,正常地計量計費。

雲開發平台鼓勵所有的場景解決方案盡可能多的基于阿裡雲的 Serverless 類型産品去提供服務。Serverless 類型的産品都具有實時彈性以及按量付費的特征,這可以幫助到商業化研發團隊,以盡可能低的成本去實作自己的商業價值。

雲開發平台具體如何真實地幫到目标使用者群體

1、雲開發平台如何幫助使用者實作線上輕量化團隊協同?

我們聯合雲效,共同建構了一個線上研發團隊的能力,團隊規模從 1-10 人到 1000 人以上,全都免費提供,助力企業快速成長!

1 分鐘完成研發團隊的線上化:在雲開發平台,團隊管理者建立好自己的企業,然後建立一批子賬号配置設定給每一個團隊成員,團隊即完成了線上化;

如果使用者企業内已經有一套域賬号系統,那麼通過對接阿裡雲 SP 的 SAML 配置之後,能夠友善實作用域賬号的 SSO;

如果團隊并非組織關系型怎麼辦呢?在雲開發平台,團隊管理者建立好自己的企業,然後複制邀請連結,發送給那些并非組織關系裡的成員,收到邀請的成員确認加入團隊即完成團隊的線上化;

2、雲開發平台如何幫助使用者實作業務的快速啟動呢?

團隊線上之後就要開始啟動業務。

新業務秒級啟動:在雲開發平台,團隊管理者可以從應用場景中,選擇一個成熟的行業應用解決方案,秒級完成應用的建立;

業務開發人員直接進入業務開發,100% focus 在業務的開發傳遞:在雲工作台,我們優化了以往傳統線下研發模式中人人需要配置開發環境的弊端,将人人要做的事情,交由應用管理者一人執行,業務開發者登入雲開發平台即開始業務開發;

3、雲開發平台如何幫助使用者實作研發環境的更新呢?

團隊線上了,應用線上了,還剩下的環節就是代碼和研發過程。

安全可靠且免費的代碼托管服務:雲開發平台聯合阿裡雲 Codeup,在雲開發平台建立的每一個應用,都會自動配置設定一個免費的代碼倉庫,為使用者提供安全可靠且免費的代碼托管服務,幫助使用者實作代碼線上;

功能強大的雲端開發環境:雲開發平台聯合阿裡經濟體共建團隊推出自研 CloudIDE,為使用者提供功能強大,相容 VS Code 插件生态的雲端開發環境,内置NodeJS,Java,PhP,Python, C# 等主流語言開發環境,開箱即用,體驗媲美本地;當然,開發者也可以選擇将代碼克隆到本地,繼續以個人偏好的開發習慣進行開發,之後随時将代碼同步到雲端,做到雲端與本地的實時同步;

業界領先的Serverless架構:在每一個應用的背後,都有強大的阿裡雲Serverless産品矩陣構成的架構服務在支撐,API Gateway+Function Compute組合、VPC+ECI+EIP組合等等,保障每一個應用上線,都能穩穩地支撐,輕松助力使用者不斷攀登新的業績高峰;

0成本啟動:基于強大的雲開發平台服務以及阿裡雲Serverless架構矩陣,我們幫使用者把 Serverless 如絲般順滑落地到他們的業務之中,大膽開發,放心試錯,無需為雲開發平台支付任何費用;

回顧

在這次突如其來的疫情期間,所有人都隔離在家,也許千人規模的企業能夠有内部的強大 IT 系統做支撐,整個企業仍然可以進行遠端異地運轉,但是對于廣大的初創及成長中的企業,這種能力無疑是稀缺的,而線上,可能是未來的一個趨勢和常态。随着阿裡雲雲開發平台服務的上線,我們可以真正幫助到這些企業,通過使用者業務視角、使用者研發界面、提供雲計算的開箱即用,去釋放雲上研發,Serverless架構的技術紅利,推動雲計算的普惠價值。

雲開發百萬補貼活動

雲開發平台補貼活動

進行中,4大免費權益讓你暢快體驗全雲端開發,無需配置環境0門檻上手,利用iPad都能夠分分鐘上線一款應用,個人部落格、個人相冊、視訊應用、todos應用模版任你選。上線免費領取50元無門檻阿裡雲代金券!

雲端研發新基建:Serverless 與持續架構服務落地實踐