javascript
如何无缝迁移 SpringCloud/Dubbo 应用到 Serverless 架构
作者 | 行松 阿里巴巴云原生團隊
本文整理自《Serverless 技術公開課》,“Serverless”公眾號后臺回復“入門”,即可獲取系列文章 PPT。
背景
通過前面幾節課程的學習,相信大家對于 SAE 平臺已經有了一定的了解,SAE 基于 IaaS 層資源構建的一款 Serverles 應用托管產品,免除了客戶很多復雜的運維工作,開箱即用、按用量付費;并且提供了豐富的 Open API 可以很容易地與其他平臺做集成。
本文將為大家介紹 SAE 在微服務方面的一些能力,SAE 產品把 Serverless 技術和微服務做了很好的結合,天然支持 Java 微服務應用的托管和服務治理,對 SpringCloud/Dubbo 微服務應用能夠在只修改配置和依賴,不修改代碼的情況下遷移到 SAE 上,并提供服務治理能力,比如基于租戶的微服務隔離環境、服務列表、無損下線、離群摘除、應用監控以及調用鏈分析等。
本次課程分為三部分來介紹,分別介紹微服務應用遷移到 SAE 的優勢,如何遷移 SpringCloud/Dubbo 應用到 SAE 上,以及針對 SpringCloud 應用遷移的實踐演示。
遷移到 SAE 的優勢
在介紹遷移之前,先介紹下 SpringCloud/Dubbo 應用遷移到 SAE 的優勢:
- **SAE 內置注冊中心:**所有用戶共享注冊中心組件,SAE 幫助用戶運維,這就節省了用戶的部署、運維成本;在服務注冊和發現的過程中進行鏈路加密,無需擔心被未授權的服務發現。
- **服務治理:**SAE 有命名空間的概念,是基于微服務租戶的邏輯隔離環境,用戶可以使用不同的命名空間來隔離微服務的注冊、發現和調用,提供無損下線、離群摘除和限流降級等服務治理能力。
- **應用監控:**SAE 針對微服務應用提供主機監控、異常棧分析以及分布式調用鏈路分析等能力,可以提升微服務應用的可觀測性和診斷能力。
- **零代碼改造:**簡單接入就可以享受免運維體驗。
SpringCloud/Dubbo 遷移方案
那如何遷移 SpringCloud/Dubbo 應用到 SAE 呢?我們只需要修改添加依賴和配置,就可以把應用部署到 SAE 上。
Dubbo 應用需要添加 dubbo-register-nacos 和 nacos-client 依賴;SpringCloud 應用需要添加 spring-cloud-starter-alibaba-nacos-discovery 即可。
SpringCloud/Dubbo 應用遷移實戰
Spring Cloud 提供了簡化應用開發的一系列標準和規范。
目前業界流行的 Spring Cloud 具體實現有 Spring Cloud Netflix、Spring Cloud Consul、Spring Cloud Gateway 和 Spring Cloud Alibaba 等。
如果您熟悉 Spring Cloud 中的 Eureka、Consul 和 ZooKeeper 等服務注冊組件,但未使用過 Spring Cloud Alibaba 的服務注冊組件 Nacos Discovery,那么您僅需將服務注冊組件的服務依賴關系和服務配置替換成 Spring Cloud Alibaba Nacos Discovery,無需修改任何代碼。
Spring Cloud Alibaba Nacos Discovery 同樣實現了 Spring Cloud Registry 的標準接口與規范,與您之前使用 Spring Cloud 接入服務注冊與發現的方式基本一致。
接下來針對 SpringCloud 應用遷移過程進行演示,演示過程請點擊【視頻課鏈接】進行觀看。
課程推薦
為了更多開發者能夠享受到 Serverless 帶來的紅利,這一次,我們集結了 10+ 位阿里巴巴 Serverless 領域技術專家,打造出最適合開發者入門的 Serverless 公開課,讓你即學即用,輕松擁抱云計算的新范式——Serverless。
點擊即可免費觀看課程:https://developer.aliyun.com/learning/roadmap/serverless
Serverless 公眾號,發布 Serverless 技術最新資訊,匯集 Serverless 技術最全內容,關注 Serverless 趨勢,更關注你落地實踐中的遇到的困惑和問題。
總結
以上是生活随笔為你收集整理的如何无缝迁移 SpringCloud/Dubbo 应用到 Serverless 架构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 管理自动化:企业上云必由之路
- 下一篇: 服务发现技术选型那点事儿