今天要分析soul
網(wǎng)關(guān)中配置數(shù)據(jù)同步的另外一種方式丢胚,基于Nacos
的。
我們先簡單的看下Nacos
是什么蠕嫁。
Nacos
-
附上從官網(wǎng)摳的一張圖
- 大家感興趣的可以移步至Nacos官網(wǎng)商虐,能有更加準(zhǔn)確以及詳細(xì)的認(rèn)知。
- docker安裝nacos
-
nacos
安裝完畢煤率,進(jìn)入正題。娄周。涕侈。
使用
soul-admin
-
配置
- 啟動(dòng)后沪停,我們發(fā)現(xiàn)沒有什么特別的地方煤辨,
nacos
控制臺(tái)上面也沒有任何admin
的信息產(chǎn)生
soul-bootstrap
- 引入依賴
<!--soul data sync start use nacos-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-sync-data-nacos</artifactId>
<version>${project.version}</version>
</dependency>
-
配置
- 不幸,沒有啟動(dòng)起來木张,報(bào)了如下錯(cuò)誤
Caused by: java.lang.NullPointerException: null
at org.dromara.soul.sync.data.nacos.handler.NacosCacheHandler.updatePluginMap(NacosCacheHandler.java:90) ~[classes/:na]
at org.dromara.soul.sync.data.nacos.handler.NacosCacheHandler.watcherData(NacosCacheHandler.java:167) ~[classes/:na]
at org.dromara.soul.sync.data.nacos.NacosSyncDataService.start(NacosSyncDataService.java:56) ~[classes/:na]
at org.dromara.soul.sync.data.nacos.NacosSyncDataService.<init>(NacosSyncDataService.java:49) ~[classes/:na]
at org.dromara.soul.springboot.starter.sync.data.nacos.NacosSyncDataConfiguration.nacosSyncDataService(NacosSyncDataConfiguration.java:66) ~[classes/:na]
- 先解決該問題众辨,重新拉一下官網(wǎng)倉庫代碼,這下又好了舷礼【槌梗看起來
soul
的nacos
同步功能就是最近開發(fā)的,還在迭代中 -
啟動(dòng)日志中有如下日志
- 再次看
nacos
控制臺(tái)妻献,nothing
- 有些不正常蛛株,進(jìn)入
debug
,發(fā)現(xiàn)soul-bootstrap
實(shí)際上是能獲取到soul-admin
上的配置數(shù)據(jù)的
- 于是再次到
nacos
控制臺(tái)育拨,發(fā)現(xiàn)有個(gè)【命名空間】的頁面
- 還記得我們在配置
soul-admin
與soul-bootstrap
中的nacos
時(shí)谨履,也配置了一個(gè)命名空間,懷疑這貨是需要手動(dòng)添加的熬丧,不能自動(dòng)新增到nacos
的控制臺(tái) - 于是手動(dòng)創(chuàng)建命名空間笋粟,將我們配置文件中的命名空間
1c10d748-af86-43b9-8265-75f487d20c6c
新增進(jìn)去
-
命名空間如下
- 再次進(jìn)入到【配置管理】->【配置列表】,并切換到
soul
空間,soul-admin
終于出現(xiàn)在nacos
控制臺(tái)上面了
- 查看一條具體的配置
soul.plugin.json
- 我們?nèi)?code>soul-admin端測試一下害捕,配置的修改是否會(huì)同步到
nacos
上 - 我們將
sentinel
插件置為開啟
- 再次看
nacos
控制臺(tái)绿淋,發(fā)現(xiàn)配置已修改
-
用版本比對(duì)查看更直觀
- 沒有我想象中的直觀 ,要是能將
json
格式化一下尝盼,并且按field
排序展示更好了(>_<)
總結(jié)
關(guān)于使用這塊就先到這里吧吞滞,主要就講了下soul
如何應(yīng)用nacos
去作為數(shù)據(jù)同步的機(jī)制,以及nacos
本身的一些介紹东涡。下面再去分析nacos
配置數(shù)據(jù)同步的實(shí)現(xiàn)冯吓。