日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring cloud: 使用consul来替换config server

發布時間:2024/4/13 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring cloud: 使用consul来替换config server 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上一篇提到了,eureka 2.x官方停止更新后,可以用consul來替代,如果采用consul的話,其實config server也沒必要繼續使用了,consul自帶kv存儲,完全可以取代config server的活兒。

?

步驟如下:

一、先添加jar依賴

// compile 'org.springframework.cloud:spring-cloud-starter-config'compile 'org.springframework.cloud:spring-cloud-starter-consul-config'  

?之前config server的依賴去掉,換成consul-config的依賴即可。

?

二、修改bootstrap.yml文件

1 spring: 2 ... 3 cloud: 4 consul: 5 host: 127.0.0.1 6 port: 8500 7 discovery: 8 tags: version=1.0,author=yjmyzz 9 healthCheckPath: /info.json 10 healthCheckInterval: 5s 11 instanceId: ${spring.application.name}:${spring.cloud.client.ipAddress} 12 enabled: true 13 config: 14 enabled: true 15 format: YAML 16 prefix: config 17 defaultContext: application 18 profileSeparator: ',' 19 data-key: data 20 # config: 21 # label: dev 22 # discovery: 23 # enabled: true 24 # service-id: my-config-server 25 # fail-fast: true 26 # retry: 27 # max-interval: 1500 28 # max-attempts: 5 29 # multiplier: 1.2

關鍵是13-19行,解釋一下:

15行 format:YAML 表示consul中的key-value中的value內容,采用YAML格式

16行 prefix: config 表示consul用于存儲配置的文件夾根目錄名為config

17行 defaultContext: application 表示配置文件對應的應用名稱(eg: 你的服務如果打算取名為myApp,則這里的application就要換成myApp)

18行?profileSeparator: ',' 表示如果有多個profile(eg: 開發環境dev,測試環境test...) ,則key名中的profile與defaultContext之間,用什么分隔符來表示(這里有點費解,后面還會詳細解釋)

19行 data-key: data 表示最后一層節點的key值名稱,一般默認為data

?

三、consul中創建kv配置節點

很多文章,包括官方文檔這一步都講得不明不白,關鍵是 節點名稱的命名規則,要與bootstrap.yml中的配置一樣,比如我們要創建一個test環境的配置,key名可以取為:

config/application,test/data

這里每一個部分,都要與上一步bootstrap.yml中的一致,上圖中5個剪頭所指,大家結合上一步中15-19行的解釋體會一下。

然后Value值的部分,把配置內容按yml格式填進去就行:

tips: 平時開發時,一般使用consul dev模式,開發模式下kv存儲不會持久化存儲,全在內存中(重啟consul就丟了!),所以一般建議yml配置文件內容,在項目中單獨存一個文件,啟動調試時,直接把配置文件內容貼到Value框里即可。

好了,現在你可以試著啟動下,順利的話,應該就可以了,是不是很簡單,關鍵還省掉了config server的部署,幫公司省了機器,別忘了讓領導給你加績效哦^_^?

?

如果希望用代碼的方式來讀/寫 KV存儲,可以用下面的方式:

讀:

curl?http://localhost:8500/v1/kv/config/application,dev/data?raw=true

?

?

參考文檔:

1、spring cloud consul 中文文檔

2、spring cloud consul 官方文檔(英文)

3、KV Store Endpoints

?

總結

以上是生活随笔為你收集整理的spring cloud: 使用consul来替换config server的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。