全面擁抱雲原生應用研發的拐點已經到來

簡介:隨着雲原生 Serverless 的概念在國內悄然升起,許多技術人彷佛從中看到了但願,許多 IT 架構師已經把它做爲目標技術架構之一。

Serverless 的跨代優點對有技術敏感的架構師來講是技術發展的紅利,通常都在持續關注它的發展。前端

可是在這兩年間,隨着整個研發生態接觸到 Serverless 的內容也愈來愈多,嘗試也愈來愈多。在許多的實踐中,愈來愈多的公司、企業開始陷入迷思。git

在9月18日的雲棲大會上,阿里雲向全球的開發者們傳遞一個信息,具有規模化落地的真正的雲原生Serverless 應用研發時代已經到來,全面擁抱雲原生應用研發的拐點已經到來!不管是大中小微公司,不管什麼業務場景,不管什麼開發語言,不管是既有的存量應用仍是新應用,不管多大用戶流量,不管全球服務有多少節點,均可以藉助阿里云云開發平臺提供的 Serverless 架構服務輕鬆落地。小程序


研發的將來在哪裏後端

互聯網+ 發展到今天,你們對互聯網業務的發展模型愈來愈熟悉,敏捷開發,流量運營,模式複製。在整個創新閉環當中,技術起着相當重要的做用:瀏覽器

  • 幫助商業創新從 Idea 變成真實的線上服務
  • 幫助保障線上服務流量極速增加仍能提供服務
  • 幫助成功的商業實現模式的複製

全部的技術人都在爲此而努力,就像奧林匹克精神那樣,以 「更高更快更強」 爲目標,不斷優化工程實踐方法。然而,這條路一路走過來的艱辛也只有技術人才懂:安全

  • 組建研發體系何其困難,麻雀雖小,五臟要全,如何快速完成研發團隊的建設,研發基礎設施的建設,是擋住商業化創新的第一道坎;
  • 用戶流量每增加一百萬,對技術架構都是巨大的挑戰,系統何時會崩潰是技術人天天都要思考的問題;
  • 業務在國內取得成功後,想要在全球範圍同步推出,每增長一個服務節點,系統架構都得從頭再搭建一次,不一樣的國家地區還不必定可以保障,嚴重製約商業化腳步;
    • *

雲原生應用研發的最後一千米魔咒微信

隨着雲原生 Serverless 的概念在國內悄然升起,許多技術人彷佛從中看到了但願,許多 IT 架構師已經把它做爲目標技術架構之一。架構

Serverless 的跨代優點對有技術敏感的架構師來講是技術發展的紅利,通常都在持續關注它的發展。併發

可是在這兩年間,隨着整個研發生態接觸到 Serverless 的內容也愈來愈多,嘗試也愈來愈多。在許多的實踐中,愈來愈多的公司、企業開始陷入一種迷思:框架

  • Serverless是否是就是FaaS?
  • 是否是隻能用在一些 「計算任務」 場景?
  • 是否是隻能在小程序等一些很小衆的研發場景才能用呢?
  • 公司原來那麼多不一樣語言開發的存量應用是否是徹底用不上?
  • 是否是隻有像阿里巴巴這種體量的公司才能玩的轉?

一切好像又回到了原點,在上述的問題沒有解決以前,企業集成或應用 Serverless 架構的設想停在了業務落地的 「最後一千米」。說好的雲原生是雲計算的將來呢?說好的雲原生能夠改變開發者的世界呢?要知道,沒有規模,就不是雲計算!沒有規模,就沒法產生沒法計算的價值!若是一個好的概念始終沒法走進普羅大衆,那它可能只能被大衆束之高閣,敬而遠之。


回顧初心,技術是爲了更好的商業創新

若是有一種方法,可以讓開發者專一在商業應用邏輯的開發自己;可以讓商業化應用不用擔憂流量的增加而崩潰;可以讓全球的服務保持一致;可以讓每個商業應用隨着流量的變化而動態調整資源的用量。那它必定是最接近理想狀態的:讓每個商業創新都變的簡單,讓每個靈感都變成可能!

今天,咱們經過雲棲大會,很是興奮的向全球的開發者們傳遞一個信息,具有規模化落地的真正的雲原生Serverless 應用研發時代已經到來,全面擁抱雲原生應用研發的拐點已經到來!不管是大中小微公司,不管什麼業務場景,不管什麼開發語言,不管是既有的存量應用仍是新應用,不管多大用戶流量,不管全球服務有多少節點,均可以藉助阿里云云開發平臺提供的 Serverless 架構服務輕鬆落地。

全面擁抱雲原生應用研發的拐點已經到來

在阿里云云開發平臺,您能夠在無需重構的狀況,將已有的NodeJS應用、Java應用、Python應用、PHP應用等,輕鬆平滑地遷移部署到雲原生Serverless架構,今後告別資源浪費,告別不靠譜的人肉流量估算人肉擴容的日子!您也能夠將資源最大化地利用在本身的業務創新上,今後再也不須要爲團隊協同環境的搭建、團隊研發測試環境的搭建、應用高併發架構的搭建費時費力費錢!

阿里云云開發平臺所提供的全雲端Serverless研發架構服務,幫助企業和合做夥伴進行更好的商業創新。


只有更公平的創新環境才能讓創新者全力比拼創意

阿里云云開發平臺(https://workbench.aliyun.com )給開發者和研發團隊提供了徹底基於「雲+瀏覽器」就能完成平常應用開發工做的環境,它的設計理念是使天天的應用研發生命週期也成爲企業團隊大協同中的一環。雲開發平臺集成了阿里巴巴諸多自研自用的開發能力和開發工具,籍由強大的阿里研發生態,爲開發者提供更大的協同研發可能。

全面擁抱雲原生應用研發的拐點已經到來

經過如下阿里巴巴自研自用服務,阿里云云開發平臺讓全部的研發團隊不論大小,不論初創小微團隊仍是行業龍頭企業,都可以享受到阿里巴巴這種體量規模的在線應用研發協同能力,讓團隊不受時間、空間、和規模的限制,讓全部的創新創業都能基於一個更公平和開放的技術環境輕鬆啓動

  • 在線團隊:與阿里云云效企業組織互通,建立後便可使用阿里云云效提供的全部在線協同能力;提供4種團隊角色,徹底映射本地研發團隊權限設計,幫助您輕鬆實現團隊上雲;
  • 在線CloudIDE環境:基於阿里巴巴前端委員會共建的 CloudIDE,與阿里巴巴內部使用的是同一套,在此基礎上,意味着您同時也能夠享受到阿里巴巴內部的插件生態,好比圖片智能生成代碼插件服務 ImgCook;
  • 在線代碼託管服務:阿里雲自研代碼託管服務 Codeup,企業級代碼管理平臺,提供代碼託管、代碼評審、代碼掃描、質量檢測等功能,全方位保護企業代碼資產,幫助企業實現安全、穩定、高效的研發管理,支撐百萬級代碼庫和數萬工程師協做,支持標準 git 操做,幫助您更方便的實現本地與雲端代碼同步管理;
  • 在線部署流水線服務:阿里雲自研部署流水線服務 Flow,從代碼到交付上線僅需5分鐘,企業級、自動化的研發交付流水線, 提供靈活易用的持續集成、持續驗證、 持續發佈功能,幫助企業高質量、高效率的交付業務;
  • 「項目」「任務」協做:「項目」是協做的基本單元,至關於釘釘或者微信的一個羣。你的「項目」能夠是一次大型會議,一個客戶項目,或者一個活動;你也能夠爲所在項目建立一個項目,用於追蹤平常工做;進入項目後,「任務」看板把左右事項公開透明的呈現出來,讓你們看見「誰」、在「什麼時候」、要「作什麼」,隨時均可以掌握工做進度。任務是驅動雲效項目的最小操做單位。一個個任務,讓進展公開透明,讓溝通卓有成效;
  • 知識庫:知識庫是一個爲企業提供知識管理的服務,經過獨立的知識庫空間,結構化地組織在線協做文檔,實現企業知識的積累和沉澱,促進知識的高度複用和流通
    • *

只有更強大的 Serverless 架構服務才能讓商業無憂成長

全面擁抱雲原生應用研發的拐點已經到來

爲了幫助用戶提供一個無縫使用阿里雲服務的環境,阿里云云開發平臺會跟阿里雲的諸多雲產品進行集成,隨時爲用戶的使用作好準備。您能夠在雲開發平臺建立基於各類場景解決方案的應用,併爲每一個應用選用不一樣的雲服務。

雲開發平臺將雲原生 Serverless 領域實踐最多的服務,如函數計算、應用引擎、容器服務,結合應用研發部署生命週期所需的能力,設計提供了三套標準 Serverless 架構服務,知足不一樣場景的應用研發部署需求,應用部署上線,流量高峯自動擴容,流量下降自動釋放資源,不再怕宕機

  • 函數計算型Serverless架構服務,這是一種羽量級Serverless應用架構服務,計算服務按請求量付費,對初創團隊很是友好,這種 IT 架構適合短時間快速實現的業務場景,好比促銷活動,以及新業務試錯場景;
  • Serverless應用引擎型架構服務,這是一種輕量級Serverless應用架構服務,計算服務按資源用量付費,對存量中小規模應用更加適合,這種架構模式,能夠基於 MSE 微服務引擎,支持服務註冊,服務發現機制,結合阿里雲上各類中間件服務產品,能輕鬆構建一個複雜的系統架構。這種架構模式適合業務成熟定型,流量穩定的業務場景,也能夠把業已成熟 IT 集成架構沉澱成雲開發平臺的公司級解決方案,讓新業務在這個基礎架構上敏捷迭代;
  • Serverless容器型架構服務,這是一種專業級Serverless應用架構服務,計算服務按資源用量付費,規模化複雜度高的巨型應用首選;
    • *

只有更少的約束才能讓研發團隊輕鬆實現業務升級

研發團隊考慮的更多的問題是如何從現有 IT 架構演進到 Serverless 計算架構之中。雲開發平臺構建了這一演進路徑,充分尊重用戶當前研發體系,支持在現有體系中集成 Serverless 構建部署功能。演進包含兩個層面,一個是存量應用的遷移,一個是新建 Serverless 應用和當前存量應用的互聯互通能力。

對於存量應用的遷移,雲開發平臺已經上架了基於 FC,SAE,ASK 的各類架構形式的遷移解決方案,且還在不斷豐富當中。好比,Java 語言的 Springboot 遷移方案,只須要把存量系統的 src 目錄和 pom.xml 拖到 CloudIDE 工程目錄,而後在 pom.xml 增長兩處約定配置,便可完成 Springboot 應用到 Serverless 應用的遷移,讓存量應用經過集成雲開發 CICD 的特性,快速升級得到 Serverless 應用的全部優點。

對於採用 Serverless 架構的新建應用,雲開發平臺支持研發團隊將公司原來已經在使用的阿里雲產品編排進新建的應用架構當中,讓新建的 Serverless 研發可以延續以前的研發模式。雲開發平臺提供的 Cloud-Native 集成研發環境支持本地研發和在線研發模式,支持雲上測試環境,預發環境,正式環境三套環境的部署。

經過阿里云云開發平臺提供的各類主流應用遷移方案,不管是等待開發的新應用仍是已經服務於用戶的在線業務,均可以經過阿里云云開發平臺提供的Serverless架構服務以及Serverless框架實現平滑的架構升級。無需改變,一切已變!

全面擁抱雲原生應用研發的拐點已經到來

  • 前端應用開發/遷移方案
  • VUE
  • React
  • 原生及更多框架支持
  • NodeJS 應用開發/遷移方案
  • Express應用
  • KOA應用
  • Egg應用
  • Next應用
  • Nuxt應用
  • Midway應用
  • NodeJS原生及更多類型的應用
  • Java 應用開發/遷移方案
  • 輕量級 SpringBoot 應用
  • 輕量級 SpringMVC 應用
  • 專業級 SpringBoot 應用
  • 專業級 SpringMVC 應用
  • Python 應用開發/遷移方案
  • Flask 應用
  • Django 應用
  • PHP 應用開發/遷移方案
  • PHP先後端一體化應用
  • 更多開發生態持續演進中
    • *

只有更低的侵入才能讓本地研發鏈路全盤複用

對大多數企業的存量項目而言,將其直接遷移到雲開發平臺會遇到一些問題:線上開發不適應、工程倉庫數量多遷移麻煩、代碼託管平臺的限制等等。所以對於企業級存量項目在保證不影響當前開發流程及開發者習慣的前提下集成阿里雲開發平臺就十分必要。在本地集成阿里雲開發平臺並不影響開發及測試,真正的變化在 CI/CD 階段。

阿里云云開發平臺根據大多數企業 CI/CD 的實踐總結了一套適用於絕大多數場景的方法論,並提供了具體的解決方案 —— 阿里云云開發平臺本地部署套件。它依託於企業的代碼託管系統(常見的如Gitlab)及提供的 Hook 機制,並結合每一個團隊的分支提交規範(gitflow)實現線下的 CI/CD。阿里雲開發平臺本地部署套件支持各類形式的集成,包括經常使用的 Jenkins、Gitlab CI 以及 Hook,同時提供測試環境、預發環境和正式環境的部署。

全面擁抱雲原生應用研發的拐點已經到來

使用阿里雲開發平臺本地 CI/CD 部署套件的成本極低:

  • 對於運維人員,僅須要在當前 CI/CD 邏輯中運行套件
  • 對於開發者,僅須要配置阿里雲開發平臺的相關認證信息

與阿里云云開發平臺與本地 CI/CD 集成,您建立的應用,就是雲原生Serverless應用!


只有更開放的生態才能讓商業創新再次加速

沒有規模,就不是雲計算!沒有規模,就沒法產生沒法計算的價值!當咱們可以提供讓雲計算開箱即用的服務,這意味着雲計算開始真正變得像這個社會的「水電煤」,人們的工做、生活,哪裏須要,只須要打開開關便可得到服務,人們將更聚焦創新!

將來,阿里云云開發平臺將與與行業生態一塊兒,共建行業應用的雲原生架構解決方案市場,讓更多的商業創新可以實現二級加速!


總結

當咱們再次回頭看,若是咱們真正作到了:您有一個Idea,就能快速讓它從概念變成現實;您有一個服務,不管它的流量如何暴漲,都能輕鬆應對,不管它的流量如何變化,都能按量付費;您有一個研發團隊,不管成員身處什麼時候何地,都能高效協同;那麼咱們就真正作到了技術是爲了更好的商業創新!

image.png