被解救的代碼 - 代碼即服務時代來了!

簡介: 人類對自由的追求從未中止,咱們用戰鬥得到民族自由,咱們用代碼得到雙手自由,同時代碼做爲服務器的奴隸,也開始蠢蠢欲動,革命已經開始,當代碼翻身作主,做爲開發者的咱們又該如何適應新時代的到來?
人類對自由的追求從未中止,咱們用戰鬥得到民族自由,咱們用代碼得到雙手自由,同時代碼做爲服務器的奴隸,也開始蠢蠢欲動,革命已經開始,當代碼翻身作主,做爲開發者的咱們又該如何適應新時代的到來?html

一切皆代碼的革命git

代碼一直是服務器中的囚徒,然而革命已來,看代碼和如何一步一步掌控環境,走向服務。github

image.png

1.革命:用代碼控制編譯打包

Pipeline as code:表明技術 Jenkins Pipeline[1]web

image.png

2.革命:用代碼控制服務器

Machine as code:表明技術 Docker
image.pngspring

3.革命:用代碼控制服務器集羣

Server cluster as code:表明技術 K8s
image.png小程序

4.革命:用代碼控制基礎資源

Infrastructure as code:表明技術 Terraform
image.png後端

當一切皆代碼,A=B 可得 B=A,代碼即服務時代就來了。springboot

代碼即服務時代的到來服務器

1.傳統時代的代碼倉庫
傳統的代碼倉庫說明中,"運行環境安裝嚮導"文檔是必備的,以 SpringBoot 代碼[2]爲例,自帶安裝嚮導[3]文檔。架構

image.png

2.新時代的代碼倉庫

參考代碼倉庫 aws-lamda-spring-boot2[4],包括 springboot 運行到 aws 的 lamda 須要的所有代碼。

image.png

image.png

3.主流技術對新時代的擁抱

以 Spring[5]的發展爲例,從 SpringBoot 開始,不斷對環境控制進行集成,直到 SpringNative,已經能夠直接構建鏡像。

image.png

代碼即服務下的雲原生架構

1.容器服務[6]:用代碼控制一切

image.png

2.微服務引擎務[7]:信任標準平臺

image.png

3.函數計算[8]:信任標準平臺,將大部分控制權交給平臺

13.webp

image.png

代碼即服務下的研發平臺戰爭

在代碼即服務的時代,各大廠商都在創建本身的雲上研發閉環,誰作好雲上的開發平臺,誰就能抓住下一帶雲原生開發者的心。
image.png

1.代碼託管之戰:得代碼者得天下
• 微軟宣佈收購 GitHub[9]
• 谷歌投資 Gitlab[10]
• AWS 自建私有倉庫 CodeCommit[11]
• 阿里雲企業級代碼託管平臺 Codeup[12]

2.在線開發之戰
• 微軟整合 VS Code 和 Github,推出 Github Codespace[13]
• 谷歌另闢蹊徑,作線下 IDE 插件 Cloud Cod[14],對接 Google Cloud
• AWS 在線雲 IDE:Cloud 9[15]
• 阿里雲 IDE:DevStudio[16]

3.在線構建 DevOps 之戰
• Azure DevOps[17]
• Google DevOps[18]
• AWS DevOps[19]
• 阿里云云效[20]

4.研發體系發展
• 在代碼即服務時代,Git 做爲代碼版本管理軟件,加上 WebHook,能夠輕鬆地管理整個代碼的運行生命週期,GitOps 應運而生。GitHub 吸 收GitOps 思想,推出 GitHub Actions[21]。
image.png

• AWS 推出產品 Proton,提供全配置代碼的服務和環境模板,將平臺建設能力和複用能力開放給平臺開發人員,讓普通開發人員更專一業務實現。
image.png

阿里雲開發平臺

1.阿里雲開發平臺,經過整合雲原生產品和雲效,完成了雲原生開發閉環
image.png

2.雲開發平臺,構建應用級別的雲原生應用,預設標準雲架構
image.png

3.雲開發平臺,應用共享
image.png

• 雲開發平臺和天貓精靈,釘釘團隊合做,整合小程序的先後端一塊兒化開發部署,解決小程序雲和用戶雲不能打通問題,給小程序加上用戶雲能力。

• 雲開發平臺應用能夠在團隊內共享,團隊內的技術交流,不再僅僅是 clone 代碼。

• 雲開發平臺市場共享,後續能夠合做方的技術方案直接在市場上構建,讓雲服務提供商不再用現場幫助用戶構建和維護雲環境。
參考資料
• [1] Jenkins Pipeline:
https://www.jenkins.io/doc/bo...
• [2] SpringBoot 代碼:
https://github.com/spring-pro...
• [3] 安裝嚮導:
https://docs.spring.io/spring...
• [4] aws-lamda-spring-boot2:
https://github.com/galovics/a...
• [5] Spring:
https://spring.io/
• [6] 容器服務:
https://www.aliyun.com/produc...
• [7] 微服務引擎:
https://www.aliyun.com/produc...
• [8] 函數計算:
https://www.aliyun.com/produc...
• [9] GitHub:
https://github.com/
• [10] Gitlab:
https://about.gitlab.com/
• [11] CodeCommit:
https://aws.amazon.com/cn/cod...
• [12] Codeup:
https://codeup.aliyun.com/
• [13] Github Codespace:
https://github.com/features/c...
• [14] Cloud Code:
https://cloud.google.com/code
• [15] Cloud 9:
https://aws.amazon.com/cn/clo...
• [16] DevStudio:
https://ide.aliyun.com/
• [17] Azure DevOps:
https://azure.microsoft.com/e...
• [18] Google DevOps:
https://cloud.google.com/devo...
• [19] AWS DevOps:
https://aws.amazon.com/cn/dev...
• [20] 阿里云云效:
https://devops.aliyun.com/
• [21] GitHub Actions:
https://github.com/features/a...
原文連接本文爲阿里雲原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索