javascript
Spring Cloud Alibaba迁移指南(三):极简的 Config
自 Spring Cloud 官方宣布 Spring Cloud Netflix 進(jìn)入維護(hù)狀態(tài)后,我們開始制作《Spring Cloud Alibaba遷移指南》系列文章,向開發(fā)者提供更多的技術(shù)選型方案,并降低遷移過程中的技術(shù)難度。
第一篇:一行代碼從 Hystrix 遷移到 Sentinel
第二篇:零代碼替換 Eureka
第三篇,我們一起來看看 Spring Cloud Alibaba 是如何使用極簡(jiǎn)的方式來做到分布式應(yīng)用的外部化配置,使得應(yīng)用在運(yùn)行時(shí)動(dòng)態(tài)更新某些配置成為可能。?
目前關(guān)于 Spring Cloud Config 的標(biāo)準(zhǔn)實(shí)現(xiàn)開源方面有三個(gè),分別是:
- Spring Cloud Alibaba Nacos Config
- Spring Cloud Consul Config
- Spring Cloud Config (Spring Cloud 官方集成的方式)
那面對(duì)于這么多的實(shí)現(xiàn),Spring Cloud Alibaba Nacos Config 的實(shí)現(xiàn)它具有哪些優(yōu)勢(shì)呢?大致從以下幾個(gè)方面來全方位的分析。
| 配置存儲(chǔ) | 直接依賴于 Nacos。 | 直接依賴于 Consul。 | 通常的組合是Config-server 和 git。 |
| 配置刷新 | 無需人工干預(yù),自動(dòng)秒級(jí)刷新。 | 無需人工干預(yù),自動(dòng)秒級(jí)刷新。 | 需要人工干預(yù),手動(dòng)觸發(fā)/bus/refresh 接口,才能達(dá)到配置動(dòng)態(tài)刷新的效果。 |
| 是否集成第三方服務(wù) | 不需要。 | 不需要。 | 存儲(chǔ)需要依賴于git,刷新依賴于 RabbitMQ 。 |
| 運(yùn)維組件 | 只需要運(yùn)維 Nacos 本身即可。 | 只需要運(yùn)維 Consul本身。 | 通常是要運(yùn)維 Config-erver,MQ 的服務(wù),提供存儲(chǔ)能力的 Git。 |
| 比較重的第三方依賴 | 無,直接引入starter 即可 。 | 無,直接引入 starter 即可。 | 不僅需要引入 starter,而且還需要引入配置刷新依賴的 spring-cloud-starter-bus-amqp 。 |
| 推送狀態(tài) | 支持 | 無 | 無 |
| 更新歷史查詢 | 支持 | 無 | 無 |
| 配置回滾 | 支持 | 無 | 無 |
| 配置加解密 | 支持 | 待確認(rèn) | 待確認(rèn) |
| 多重容災(zāi) | 支持 | 無 | 無 |
同時(shí) Spring Cloud Alibaba 還可以基于 Spring Cloud Alibaba Nacos Config 無縫對(duì)接云上的 ACM,這給一些需要上云的用戶帶來了極其的方便。綜上全方位的對(duì)比,Spring Cloud Alibaba Nacos Config 無疑提供了性價(jià)比最高的 Spring Cloud Config 的開源實(shí)現(xiàn)。
下面以一個(gè)快速上手的案例體驗(yàn)一下 Spring Cloud Alibaba Nacos?Config 的實(shí)現(xiàn)是如何使用的。同時(shí)也提供了簡(jiǎn)單的方式給那些想轉(zhuǎn)用 Spring Cloud Alibaba Nacos Config 的同學(xué)做一些參考。
第 1 步:Nacos 服務(wù)端初始化。
1.1 啟動(dòng) Nacos Server。啟動(dòng)方式可見?Nacos 官網(wǎng)?。
1.2 添加配置。啟動(dòng)好 Nacos 之后,在 Nacos 控制臺(tái)添加如下的配置。
__注意__:
- Data Id 是以 properties(默認(rèn)的文件擴(kuò)展名方式)為擴(kuò)展名。
- 文件名以 ${spring.application.name} 配置參數(shù)為主。
- 配置內(nèi)容:當(dāng)你想從其他的存儲(chǔ)源(例如: git) 要往 Nacos 進(jìn)行遷移的話,目前只能通過手動(dòng)的方式進(jìn)行逐個(gè)的添加。${key} 是根據(jù)您的業(yè)務(wù)場(chǎng)景需要配置的或者遷移的 key, ${value} 就是對(duì)應(yīng)的具體值。
第 2 步:Spring Cloud Alibaba Nacos Config 客戶端使用方式。
2.1 添加 maven 依賴。為了能夠在應(yīng)用程序中使用 Nacos 來實(shí)現(xiàn)應(yīng)用的外部化配置,在構(gòu)建應(yīng)用的同時(shí)或者已經(jīng)存在的應(yīng)用需要引入一個(gè) Starter,如下所示:
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>0.2.2.BUILD-SNAPSHOT</version> </dependency>2.2 添加相關(guān)配置。客戶端需要和 Nacos 服務(wù)端進(jìn)行通信,因此需要配置 Nacos 服務(wù)端的地址。在您的應(yīng)用配置文件中新增如下配置,這里以 application.properties 為例。
spring.cloud.nacos.config.server-addr=127.0.0.1:8848完成以上兩個(gè)步驟,就已經(jīng)完成了 Spring Cloud Alibaba Nacos Config 的基本使用。
#阿里云開年Hi購(gòu)季#幸運(yùn)抽好禮!
點(diǎn)此抽獎(jiǎng):https://www.aliyun.com/acts/product-section-2019/yq-lottery?utm_content=g_1000042901
原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的Spring Cloud Alibaba迁移指南(三):极简的 Config的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五四,阿里巴巴新青年了解下?
- 下一篇: 利用Serverless Kuberne