被解救的代碼 - 代碼即服務(wù)時代來了
人類對自由的追求從未停止,我們用戰(zhàn)斗獲得民族自由,我們用代碼獲得雙手自由,同時代碼作為服務(wù)器的奴隸,也開始蠢蠢欲動,革命已經(jīng)開始,當代碼翻身做主,作為開發(fā)者的我們又該如何適應新時代的到來?
一、一切皆代碼的革命(Everything As Code)
代碼一直是服務(wù)器中的囚徒,然而革命已來,看代碼和如何一步一步掌控環(huán)境,走向服務(wù)。
1. 革命:用代碼控制編譯打包
Pipeline as code:代表技術(shù) Jenkins Pipeline
2. 革命:用代碼控制服務(wù)器
Machine as code:代表技術(shù) Docker
3. 革命:用代碼控制服務(wù)器集群
Server cluster as code:代表技術(shù) K8S
4. 革命:用代碼控制基礎(chǔ)資源
Infrastructure as code:代表技術(shù) Terraform
當一切皆代碼,A=B 可得 B=A,代碼即服務(wù)時代就來了。
二、代碼即服務(wù)時代的到來
1. 傳統(tǒng)時代的代碼倉庫
傳統(tǒng)的代碼倉庫說明中,"運行環(huán)境安裝向?qū)?quot;文檔是必備的,以 SpringBoot 代碼為例,自帶安裝向?qū)臋n。
2. 新時代的代碼倉庫
參考代碼倉庫 aws-lamda-spring-boot2,包括 springboot 運行到 aws 的 lamda 需要的全部代碼。
2. 新時代的代碼倉庫
參考代碼倉庫 aws-lamda-spring-boot2,包括 springboot 運行到 aws 的 lamda 需要的全部代碼。
3. 主流技術(shù)對新時代的擁抱
以 Spring 的發(fā)展為例,從 SpringBoot 開始,不斷對環(huán)境控制進行集成,直到 SpringNative,已經(jīng)可以直接構(gòu)建鏡像。
三、代碼即服務(wù)下的云原生架構(gòu)
1. 容器服務(wù):用代碼控制一切
2. 微服務(wù)引擎:信任標準平臺,將部分控制權(quán)交給平臺
3. 函數(shù)計算:信任標準平臺,將大部分控制權(quán)交給平臺
四、代碼即服務(wù)下的研發(fā)平臺戰(zhàn)爭
在代碼即服務(wù)的時代,各大廠商都在建立自己的云上研發(fā)閉環(huán),誰做好云上的開發(fā)平臺,誰就能抓住下一代云原生開發(fā)者的心。
1. 代碼托管之戰(zhàn):得代碼者的天下
微軟宣布收購 GitHub谷歌投資 GitlabAWS 自建私有倉庫 CodeCommit阿里云企業(yè)級代碼托管平臺 Codeup
2. 在線開發(fā)之戰(zhàn)
微軟整合 VS Code 和 Github,推出 Github Codespace谷歌另辟蹊徑,做線下 IDE 插件 Cloud Code,對接 Google CloudAWS 在線云 IDE:Cloud 9阿里云 IDE:DevStudio
3. 在線構(gòu)建 DevOps 之戰(zhàn)
Azure DevOpsGoogle DevOpsAWS DevOps阿里云云效
4. 研發(fā)體系發(fā)展
在代碼即服務(wù)時代,Git 作為代碼版本管理軟件,加上 WebHook,可以輕松地管理整個代碼的運行生命周期,GitOps 應運而生。GitHub 吸 收GitOps 思想,推出 GitHub Actions。
AWS 推出產(chǎn)品 Proton,提供全配置代碼的服務(wù)和環(huán)境模板,將平臺建設(shè)能力和復用能力開放給平臺開發(fā)人員,讓普通開發(fā)人員更專注業(yè)務(wù)實現(xiàn)。
五、阿里云開發(fā)平臺
1. 云開發(fā)平臺,通過整合云原生產(chǎn)品和云效,完成了云原生開發(fā)閉環(huán)
2. 云開發(fā)平臺,構(gòu)建應用級別的云原生應用,預設(shè)標準云架構(gòu)
3. 云開發(fā)平臺,應用共享
云開發(fā)平臺和天貓精靈,釘釘團隊合作,整合小程序的前后端一體化開發(fā)部署,解決小程序云和用戶云不能打通問題,給小程序加上用戶云能力。云開發(fā)平臺應用可以在團隊內(nèi)共享,團隊內(nèi)的技術(shù)交流,再也不僅僅是 clone 代碼。云開發(fā)平臺市場共享,后續(xù)可以合作方的技術(shù)方案直接在市場上構(gòu)建,讓云服務(wù)提供商再也不用現(xiàn)場幫助用戶構(gòu)建和維護云環(huán)境。
六、結(jié)語
誠摯邀請大家加入云開發(fā)平臺,一起共建服務(wù)百萬阿里云開發(fā)者阿里云的云上研發(fā)平臺。