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