Spring Cloud Alibaba遷移指南(三):極簡的 Config

自 Spring Cloud 官方宣佈 Spring Cloud Netflix 進入維護狀態後,咱們開始製做《Spring Cloud Alibaba遷移指南》系列文章,向開發者提供更多的技術選型方案,並下降遷移過程當中的技術難度。html

第一篇:一行代碼從 Hystrix 遷移到 Sentinel
第二篇:零代碼替換 Eurekagit

第三篇,咱們一塊兒來看看 Spring Cloud Alibaba 是如何使用極簡的方式來作到分佈式應用的外部化配置,使得應用在運行時動態更新某些配置成爲可能。 github

目前關於 Spring Cloud Config 的標準實現開源方面有三個,分別是:spring

  • Spring Cloud Alibaba Nacos Config
  • Spring Cloud Consul Config
  • Spring Cloud Config (Spring Cloud 官方集成的方式)

那面對於這麼多的實現,Spring Cloud Alibaba Nacos Config 的實現它具備哪些優點呢?大體從如下幾個方面來全方位的分析。app

Spring Cloud Alibaba Nacos Config Spring Cloud Consul Config Spring Cloud Config (Spring Cloud 官方集成的方式)
配置存儲 直接依賴於 Nacos。 直接依賴於 Consul。 一般的組合是Config-server 和 git。
配置刷新 無需人工干預,自動秒級刷新。 無需人工干預,自動秒級刷新。 須要人工干預,手動觸發/bus/refresh 接口,才能達到配置動態刷新的效果。
是否集成第三方服務 不須要。 不須要。 存儲須要依賴於git,刷新依賴於 RabbitMQ 。
運維組件 只須要運維 Nacos 自己便可。 只須要運維 Consul自己。 一般是要運維 Config-erver,MQ 的服務,提供存儲能力的 Git。
比較重的第三方依賴 無,直接引入starter 便可 。 無,直接引入 starter 便可。 不只須要引入 starter,並且還須要引入配置刷新依賴的 spring-cloud-starter-bus-amqp 。
推送狀態 支持
更新歷史查詢 支持
配置回滾 支持
配置加解密 支持 待確認 待確認
多重容災 支持

同時 Spring Cloud Alibaba 還能夠基於 Spring Cloud Alibaba Nacos Config 無縫對接雲上的 ACM,這給一些須要上雲的用戶帶來了極其的方便。綜上全方位的對比,Spring Cloud Alibaba Nacos Config 無疑提供了性價比最高的 Spring Cloud Config 的開源實現。運維

下面以一個快速上手的案例體驗一下 Spring Cloud Alibaba Nacos Config 的實現是如何使用的。同時也提供了簡單的方式給那些想轉用 Spring Cloud Alibaba Nacos Config 的同窗作一些參考。maven

第 1 步:Nacos 服務端初始化。分佈式

1.1 啓動 Nacos Server。啓動方式可見 Nacos 官網 。
1.2 添加配置。啓動好 Nacos 以後,在 Nacos 控制檯添加以下的配置。ui

Data ID:    ${spring.application.name}.properties

Group  :    DEFAULT_GROUP

配置格式:    Properties

配置內容:    ${key}=${value}

__注意__:code

  • Data Id 是以 properties(默認的文件擴展名方式)爲擴展名。
  • 文件名以 ${spring.application.name} 配置參數爲主。
  • 配置內容:當你想從其餘的存儲源(例如: git) 要往 Nacos 進行遷移的話,目前只能經過手動的方式進行逐個的添加。${key} 是根據您的業務場景須要配置的或者遷移的 key, ${value} 就是對應的具體值。

第 2 步:Spring Cloud Alibaba Nacos Config 客戶端使用方式。

2.1 添加 maven 依賴。爲了可以在應用程序中使用 Nacos 來實現應用的外部化配置,在構建應用的同時或者已經存在的應用須要引入一個 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 添加相關配置。客戶端須要和 Nacos 服務端進行通訊,所以須要配置 Nacos 服務端的地址。在您的應用配置文件中新增以下配置,這裏以 application.properties 爲例。

spring.cloud.nacos.config.server-addr=127.0.0.1:8848

完成以上兩個步驟,就已經完成了 Spring Cloud Alibaba Nacos Config 的基本使用。完整的使用可參考 Spring Cloud Alibaba 的管方 Wiki 文檔



本文做者:中間件小哥

閱讀原文

本文爲雲棲社區原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索