全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

簡介:隨著云原生 Serverless 的概念在國內(nèi)悄然升起,許多技術(shù)人似乎從中看到了希望,許多 IT 架構(gòu)師已經(jīng)把它作為目標技術(shù)架構(gòu)之一。

Serverless 的跨代優(yōu)勢對有技術(shù)敏感的架構(gòu)師來說是技術(shù)發(fā)展的紅利,一般都在持續(xù)關注它的發(fā)展。

但是在這兩年間,隨著整個研發(fā)生態(tài)接觸到 Serverless 的內(nèi)容也越來越多,嘗試也越來越多。在許多的實踐中,越來越多的公司、企業(yè)開始陷入迷思。

在9月18日的云棲大會上,阿里云向全球的開發(fā)者們傳遞一個信息,具備規(guī)?;涞氐恼嬲脑圃鶶erverless 應用研發(fā)時代已經(jīng)到來,全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來!無論是大中小微公司,無論什么業(yè)務場景,無論什么開發(fā)語言,無論是既有的存量應用還是新應用,無論多大用戶流量,無論全球服務有多少節(jié)點,都可以借助阿里云云開發(fā)平臺提供的 Serverless 架構(gòu)服務輕松落地。

研發(fā)的未來在哪里

互聯(lián)網(wǎng)+ 發(fā)展到今天,大家對互聯(lián)網(wǎng)業(yè)務的發(fā)展模型越來越熟悉,敏捷開發(fā),流量運營,模式復制。在整個創(chuàng)新閉環(huán)當中,技術(shù)起著至關重要的作用:

幫助商業(yè)創(chuàng)新從 Idea 變成真實的線上服務

幫助保障線上服務流量極速增長仍能提供服務

幫助成功的商業(yè)實現(xiàn)模式的復制

所有的技術(shù)人都在為此而努力,就像奧林匹克精神那樣,以 “更高更快更強” 為目標,不斷優(yōu)化工程實踐方法。然而,這條路一路走過來的艱辛也只有技術(shù)人才懂:

組建研發(fā)體系何其困難,麻雀雖小,五臟要全,如何快速完成研發(fā)團隊的建設,研發(fā)基礎設施的建設,是擋住商業(yè)化創(chuàng)新的第一道坎;

用戶流量每增長一百萬,對技術(shù)架構(gòu)都是巨大的挑戰(zhàn),系統(tǒng)什么時候會崩潰是技術(shù)人每天都要思考的問題;

業(yè)務在國內(nèi)取得成功后,想要在全球范圍同步推出,每增加一個服務節(jié)點,系統(tǒng)架構(gòu)都得從頭再搭建一次,不同的國家地區(qū)還不一定能夠保障,嚴重制約商業(yè)化腳步;

*

云原生應用研發(fā)的最后一公里魔咒

隨著云原生 Serverless 的概念在國內(nèi)悄然升起,許多技術(shù)人似乎從中看到了希望,許多 IT 架構(gòu)師已經(jīng)把它作為目標技術(shù)架構(gòu)之一。

Serverless 的跨代優(yōu)勢對有技術(shù)敏感的架構(gòu)師來說是技術(shù)發(fā)展的紅利,一般都在持續(xù)關注它的發(fā)展。

但是在這兩年間,隨著整個研發(fā)生態(tài)接觸到 Serverless 的內(nèi)容也越來越多,嘗試也越來越多。在許多的實踐中,越來越多的公司、企業(yè)開始陷入一種迷思:

Serverless是不是就是FaaS?

是不是只能用在一些 “計算任務” 場景?

是不是只能在小程序等一些很小眾的研發(fā)場景才能用呢?

公司原來那么多不同語言開發(fā)的存量應用是不是完全用不上?

是不是只有像阿里巴巴這種體量的公司才能玩的轉(zhuǎn)?

一切好像又回到了原點,在上述的問題沒有解決之前,企業(yè)集成或應用 Serverless 架構(gòu)的設想停在了業(yè)務落地的 “最后一公里”。說好的云原生是云計算的未來呢?說好的云原生可以改變開發(fā)者的世界呢?要知道,沒有規(guī)模,就不是云計算!沒有規(guī)模,就無法產(chǎn)生無法計算的價值!如果一個好的概念始終無法走進普羅大眾,那它可能只能被大眾束之高閣,敬而遠之。

回顧初心,技術(shù)是為了更好的商業(yè)創(chuàng)新

如果有一種方法,能夠讓開發(fā)者專注在商業(yè)應用邏輯的開發(fā)本身;能夠讓商業(yè)化應用不用擔心流量的增長而崩潰;能夠讓全球的服務保持一致;能夠讓每一個商業(yè)應用隨著流量的變化而動態(tài)調(diào)整資源的用量。那它一定是最接近理想狀態(tài)的:讓每一個商業(yè)創(chuàng)新都變的簡單,讓每一個靈感都變成可能!

今天,我們通過云棲大會,非常興奮的向全球的開發(fā)者們傳遞一個信息,具備規(guī)模化落地的真正的云原生Serverless 應用研發(fā)時代已經(jīng)到來,全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來!無論是大中小微公司,無論什么業(yè)務場景,無論什么開發(fā)語言,無論是既有的存量應用還是新應用,無論多大用戶流量,無論全球服務有多少節(jié)點,都可以借助阿里云云開發(fā)平臺提供的 Serverless 架構(gòu)服務輕松落地。

全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

在阿里云云開發(fā)平臺,您可以在無需重構(gòu)的情況,將已有的NodeJS應用、Java應用、Python應用、PHP應用等,輕松平滑地遷移部署到云原生Serverless架構(gòu),從此告別資源浪費,告別不靠譜的人肉流量估算人肉擴容的日子!您也可以將資源最大化地利用在自己的業(yè)務創(chuàng)新上,從此不再需要為團隊協(xié)同環(huán)境的搭建、團隊研發(fā)測試環(huán)境的搭建、應用高并發(fā)架構(gòu)的搭建費時費力費錢!

阿里云云開發(fā)平臺所提供的全云端Serverless研發(fā)架構(gòu)服務,幫助企業(yè)和合作伙伴進行更好的商業(yè)創(chuàng)新。

只有更公平的創(chuàng)新環(huán)境才能讓創(chuàng)新者全力比拼創(chuàng)意

阿里云云開發(fā)平臺(https://workbench.aliyun.com )給開發(fā)者和研發(fā)團隊提供了完全基于「云+瀏覽器」就能完成日常應用開發(fā)工作的環(huán)境,它的設計理念是使每天的應用研發(fā)生命周期也成為企業(yè)團隊大協(xié)同中的一環(huán)。云開發(fā)平臺集成了阿里巴巴諸多自研自用的開發(fā)能力和開發(fā)工具,籍由強大的阿里研發(fā)生態(tài),為開發(fā)者提供更大的協(xié)同研發(fā)可能。

全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

通過以下阿里巴巴自研自用服務,阿里云云開發(fā)平臺讓所有的研發(fā)團隊不論大小,不論初創(chuàng)小微團隊還是行業(yè)龍頭企業(yè),都能夠享受到阿里巴巴這種體量規(guī)模的在線應用研發(fā)協(xié)同能力,讓團隊不受時間、空間、和規(guī)模的限制,讓所有的創(chuàng)新創(chuàng)業(yè)都能基于一個更公平和開放的技術(shù)環(huán)境輕松啟動!

在線團隊:與阿里云云效企業(yè)組織互通,創(chuàng)建后即可使用阿里云云效提供的所有在線協(xié)同能力;提供4種團隊角色,完全映射本地研發(fā)團隊權(quán)限設計,幫助您輕松實現(xiàn)團隊上云;

在線CloudIDE環(huán)境:基于阿里巴巴前端委員會共建的 CloudIDE,與阿里巴巴內(nèi)部使用的是同一套,在此基礎上,意味著您同時也可以享受到阿里巴巴內(nèi)部的插件生態(tài),比如圖片智能生成代碼插件服務 ImgCook;

在線代碼托管服務:阿里云自研代碼托管服務 Codeup,企業(yè)級代碼管理平臺,提供代碼托管、代碼評審、代碼掃描、質(zhì)量檢測等功能,全方位保護企業(yè)代碼資產(chǎn),幫助企業(yè)實現(xiàn)安全、穩(wěn)定、高效的研發(fā)管理,支撐百萬級代碼庫和數(shù)萬工程師協(xié)作,支持標準 git 操作,幫助您更方便的實現(xiàn)本地與云端代碼同步管理;

在線部署流水線服務:阿里云自研部署流水線服務 Flow,從代碼到交付上線僅需5分鐘,企業(yè)級、自動化的研發(fā)交付流水線, 提供靈活易用的持續(xù)集成、持續(xù)驗證、 持續(xù)發(fā)布功能,幫助企業(yè)高質(zhì)量、高效率的交付業(yè)務;

「項目」「任務」協(xié)作:「項目」是協(xié)作的基本單元,相當于釘釘或者微信的一個群。你的「項目」可以是一次大型會議,一個客戶項目,或者一個活動;你也可以為所在項目創(chuàng)建一個項目,用于追蹤日常工作;進入項目后,「任務」看板把左右事項公開透明的呈現(xiàn)出來,讓大家看見「誰」、在「何時」、要「做什么」,隨時都可以掌握工作進度。任務是驅(qū)動云效項目的最小操作單位。一個個任務,讓進展公開透明,讓溝通卓有成效;

知識庫:知識庫是一個為企業(yè)提供知識管理的服務,通過獨立的知識庫空間,結(jié)構(gòu)化地組織在線協(xié)作文檔,實現(xiàn)企業(yè)知識的積累和沉淀,促進知識的高度復用和流通

*

只有更強大的 Serverless 架構(gòu)服務才能讓商業(yè)無憂成長

全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

為了幫助用戶提供一個無縫使用阿里云服務的環(huán)境,阿里云云開發(fā)平臺會跟阿里云的諸多云產(chǎn)品進行集成,隨時為用戶的使用做好準備。您可以在云開發(fā)平臺創(chuàng)建基于各種場景解決方案的應用,并為每個應用選用不同的云服務。

云開發(fā)平臺將云原生 Serverless 領域?qū)嵺`最多的服務,如函數(shù)計算、應用引擎、容器服務,結(jié)合應用研發(fā)部署生命周期所需的能力,設計提供了三套標準 Serverless 架構(gòu)服務,滿足不同場景的應用研發(fā)部署需求,應用部署上線,流量高峰自動擴容,流量降低自動釋放資源,再也不怕宕機。

函數(shù)計算型Serverless架構(gòu)服務,這是一種羽量級Serverless應用架構(gòu)服務,計算服務按請求量付費,對初創(chuàng)團隊非常友好,這種 IT 架構(gòu)適合短期快速實現(xiàn)的業(yè)務場景,比如促銷活動,以及新業(yè)務試錯場景;

Serverless應用引擎型架構(gòu)服務,這是一種輕量級Serverless應用架構(gòu)服務,計算服務按資源用量付費,對存量中小規(guī)模應用更加適合,這種架構(gòu)模式,可以基于 MSE 微服務引擎,支持服務注冊,服務發(fā)現(xiàn)機制,結(jié)合阿里云上各種中間件服務產(chǎn)品,能輕松構(gòu)建一個復雜的系統(tǒng)架構(gòu)。這種架構(gòu)模式適合業(yè)務成熟定型,流量穩(wěn)定的業(yè)務場景,也可以把業(yè)已成熟 IT 集成架構(gòu)沉淀成云開發(fā)平臺的公司級解決方案,讓新業(yè)務在這個基礎架構(gòu)上敏捷迭代;

Serverless容器型架構(gòu)服務,這是一種專業(yè)級Serverless應用架構(gòu)服務,計算服務按資源用量付費,規(guī)模化復雜度高的巨型應用首選;

*

只有更少的約束才能讓研發(fā)團隊輕松實現(xiàn)業(yè)務升級

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

對于存量應用的遷移,云開發(fā)平臺已經(jīng)上架了基于 FC,SAE,ASK 的各種架構(gòu)形式的遷移解決方案,且還在不斷豐富當中。比如,Java 語言的 Springboot 遷移方案,只需要把存量系統(tǒng)的 src 目錄和 pom.xml 拖到 CloudIDE 工程目錄,然后在 pom.xml 增加兩處約定配置,即可完成 Springboot 應用到 Serverless 應用的遷移,讓存量應用通過集成云開發(fā) CICD 的特性,快速升級獲得 Serverless 應用的所有優(yōu)勢。

對于采用 Serverless 架構(gòu)的新建應用,云開發(fā)平臺支持研發(fā)團隊將公司原來已經(jīng)在使用的阿里云產(chǎn)品編排進新建的應用架構(gòu)當中,讓新建的 Serverless 研發(fā)能夠延續(xù)之前的研發(fā)模式。云開發(fā)平臺提供的 Cloud-Native 集成研發(fā)環(huán)境支持本地研發(fā)和在線研發(fā)模式,支持云上測試環(huán)境,預發(fā)環(huán)境,正式環(huán)境三套環(huán)境的部署。

通過阿里云云開發(fā)平臺提供的各種主流應用遷移方案,不論是等待開發(fā)的新應用還是已經(jīng)服務于用戶的在線業(yè)務,都可以通過阿里云云開發(fā)平臺提供的Serverless架構(gòu)服務以及Serverless框架實現(xiàn)平滑的架構(gòu)升級。無需改變,一切已變!

全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

前端應用開發(fā)/遷移方案

VUE

React

原生及更多框架支持

NodeJS 應用開發(fā)/遷移方案

Express應用

KOA應用

Egg應用

Next應用

Nuxt應用

Midway應用

NodeJS原生及更多類型的應用

Java 應用開發(fā)/遷移方案

輕量級 SpringBoot 應用

輕量級 SpringMVC 應用

專業(yè)級 SpringBoot 應用

專業(yè)級 SpringMVC 應用

Python 應用開發(fā)/遷移方案

Flask 應用

Django 應用

PHP 應用開發(fā)/遷移方案

PHP前后端一體化應用

更多開發(fā)生態(tài)持續(xù)演進中

*

只有更低的侵入才能讓本地研發(fā)鏈路全盤復用

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

阿里云云開發(fā)平臺根據(jù)大多數(shù)企業(yè) CI/CD 的實踐總結(jié)了一套適用于絕大多數(shù)場景的方法論,并提供了具體的解決方案 —— 阿里云云開發(fā)平臺本地部署套件。它依托于企業(yè)的代碼托管系統(tǒng)(常見的如Gitlab)及提供的 Hook 機制,并結(jié)合每個團隊的分支提交規(guī)范(gitflow)實現(xiàn)線下的 CI/CD。阿里云開發(fā)平臺本地部署套件支持各種形式的集成,包括常用的 Jenkins、Gitlab CI 以及 Hook,同時提供測試環(huán)境、預發(fā)環(huán)境和正式環(huán)境的部署。

全面擁抱云原生應用研發(fā)的拐點已經(jīng)到來

使用阿里云開發(fā)平臺本地 CI/CD 部署套件的成本極低:

對于運維人員,僅需要在當前 CI/CD 邏輯中運行套件

對于開發(fā)者,僅需要配置阿里云開發(fā)平臺的相關認證信息

與阿里云云開發(fā)平臺與本地 CI/CD 集成,您創(chuàng)建的應用,就是云原生Serverless應用!

只有更開放的生態(tài)才能讓商業(yè)創(chuàng)新再次加速

沒有規(guī)模,就不是云計算!沒有規(guī)模,就無法產(chǎn)生無法計算的價值!當我們能夠提供讓云計算開箱即用的服務,這意味著云計算開始真正變得像這個社會的“水電煤”,人們的工作、生活,哪里需要,只需要打開開關即可獲得服務,人們將更聚焦創(chuàng)新!

未來,阿里云云開發(fā)平臺將與與行業(yè)生態(tài)一起,共建行業(yè)應用的云原生架構(gòu)解決方案市場,讓更多的商業(yè)創(chuàng)新能夠?qū)崿F(xiàn)二級加速!

總結(jié)

當我們再次回頭看,如果我們真正做到了:您有一個Idea,就能快速讓它從概念變成現(xiàn)實;您有一個服務,無論它的流量如何暴漲,都能輕松應對,無論它的流量如何變化,都能按量付費;您有一個研發(fā)團隊,無論成員身處何時何地,都能高效協(xié)同;那么我們就真正做到了技術(shù)是為了更好的商業(yè)創(chuàng)新!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容