soul 網(wǎng)關(guān)入門篇(七):數(shù)據(jù)同步方式- nacos 配置

前言

上回說到阻荒, 同步數(shù)據(jù)有不同的策略崔涂。如果一個 admin 配置多個同步方式那么 soul-web 會選哪個呢罗珍?還是一個 admin 只能配置一個同步策略呢邢享?

配置多個同步策略

配置多個同步策略時鹏往,需要 zookeeper 和 nacos 兩個服務(wù)。這里使用 docker 安裝即可骇塘。詳情點擊: zookeeper docker 安裝伊履, nacaos 安裝,根據(jù)提示檢測是否成功款违。

成功后我們 soul-admin 后臺配置唐瀑。

soul:
  sync:
    websocket:
      enabled: true
      zookeeper:
          url: localhost:2181
          sessionTimeout: 5000
          connectionTimeout: 2000
      http:
        enabled: true
      nacos:
        url: localhost:8848
        namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
        acm:
          enabled: false
          endpoint: acm.aliyun.com
          namespace:
          accessKey:
          secretKey:

重新啟動 admin, 將 soul-bootstrap 修改如下

soul :
    sync:
        websocket :
             urls: ws://localhost:9095/websocket
        zookeeper:
             url: localhost:2181
             sessionTimeout: 5000
             connectionTimeout: 2000
#  這里先注釋掉插爹,bootstrap http 和 webscoket 會報錯哄辣,下面會解釋原因
#        http:
#             url : http://localhost:9095
        nacos:
              url: localhost:8848
              namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
              acm:
                enabled: false
                endpoint: acm.aliyun.com
                namespace:
                accessKey:
                secretKey:

然后檢查 pom 文件相關(guān)包是否引入:

<!--soul data sync start use zookeeper-->
        <dependency>
            <groupId>org.dromara</groupId>
            <artifactId>soul-spring-boot-starter-sync-data-zookeeper</artifactId>
            <version>${project.version}</version>
        </dependency>

        <!--soul data sync start use websocket-->
        <dependency>
            <groupId>org.dromara</groupId>
            <artifactId>soul-spring-boot-starter-sync-data-websocket</artifactId>
            <version>${project.version}</version>
        </dependency>

        <!--soul data sync start use http-->
        <dependency>
            <groupId>org.dromara</groupId>
            <artifactId>soul-spring-boot-starter-sync-data-http</artifactId>
            <version>${project.version}</version>
        </dependency>

    <!-- soul data sync start use nacos-->
        <dependency>
            <groupId>org.dromara</groupId>
            <artifactId>soul-spring-boot-starter-sync-data-http</artifactId>
            <version>${project.version}</version>
        </dependency>

沒有引入的話,自行引入即可赠尾,重新啟動 bootstrap力穗。從命令行看出

2021-01-21 18:59:34.263  INFO 6334 --- [           main] s.b.s.d.z.ZookeeperSyncDataConfiguration : you use zookeeper sync soul data.......
...
2021-01-21 18:59:34.395  INFO 6334 --- [           main] b.s.s.d.w.WebsocketSyncDataConfiguration : you use websocket sync soul data.......
2021-01-21 18:59:34.441  INFO 6334 --- [           main] d.s.s.s.s.d.n.NacosSyncDataConfiguration : you use nacos sync soul data.......
2021-01-21 18:59:34.851  WARN 6334 --- [           main] onfigReactiveWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nacosSyncDataService' defined in class path resource [org/dromara/soul/springboot/starter/sync/data/nacos/NacosSyncDataConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.dromara.soul.sync.data.api.SyncDataService]: Factory method 'nacosSyncDataService' threw exception; nested exception is java.lang.NullPointerException
2021-01-21 18:59:34.853  INFO 6334 --- [-localhost:2181] org.I0Itec.zkclient.ZkEventThread        : Terminate ZkClient event thread.
2021-01-21 18:59:34.970  INFO 6334 --- [           main] org.apache.zookeeper.ZooKeeper           : Session: 0x10001d80adf0007 closed
2021-01-21 18:59:34.970  INFO 6334 --- [ain-EventThread] org.apache.zookeeper.ClientCnxn          : EventThread shut down for session: 0x10001d80adf0007
2021-01-21 18:59:34.982  INFO 6334 --- [           main] ConditionEvaluationReportLoggingListener : 

Debug

判斷是否是 nacos 的配置有誤。按照上述流程气嫁,注釋掉其他的策略当窗,只留 nacos,配置好重啟寸宵。
發(fā)現(xiàn)還是報錯, 經(jīng)過調(diào)試發(fā)現(xiàn):


configInfo

現(xiàn)在在 soul 上提了一個 issue 崖面,有可能是個bug,但也有可能是我配置 nacos 的問題梯影。

解決辦法

  1. 確保是否是 Nacos 的配置問題巫员。
  2. 登錄 admin 后臺,在以下菜單上配置好信息光酣,然后同步到 nacos 上疏遏,


    需要同步數(shù)據(jù)的菜單

    看看 nacos 上是否有信息。
    配置權(quán)限的時候救军,需要在列表處,打上勾倘零,不然會無法傳輸


    權(quán)限配置
  3. 檢查 nacos 是否都有以下參數(shù)


    nacos 檢查
  4. 啟動 soul 網(wǎng)關(guān), 出現(xiàn)以下則配置成功
2021-01-22 09:55:36.837  INFO 8210 --- [           main] d.s.s.s.s.d.n.NacosSyncDataConfiguration : you use nacos sync soul data.......
2021-01-22 09:55:37.197  INFO 8210 --- [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 2 endpoint(s) beneath base path '/actuator'
2021-01-22 09:55:37.756  INFO 8210 --- [           main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port(s): 9195
2021-01-22 09:55:37.760  INFO 8210 --- [           main] o.d.s.b.SoulBootstrapApplication         : Started SoulBootstrapApplication in 3.625 seconds

總結(jié)

  1. 調(diào)試的時候唱遭,如果發(fā)現(xiàn)問題,可以先把身邊用過的人問問是否會出現(xiàn)這種情況呈驶,是個例還是通性問題拷泽。
  2. 如果是通性問題,可以去社區(qū),或者 github 上直接提 issue 問清楚司致。不要害怕寫英語拆吆,其實大家水平都差不多。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脂矫,一起剝皮案震驚了整個濱河市枣耀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌庭再,老刑警劉巖捞奕,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異拄轻,居然都是意外死亡颅围,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進(jìn)店門恨搓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來院促,“玉大人,你說我怎么就攤上這事斧抱∫环瑁” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵夺姑,是天一觀的道長墩邀。 經(jīng)常有香客問我,道長盏浙,這世上最難降的妖魔是什么眉睹? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮废膘,結(jié)果婚禮上竹海,老公的妹妹穿的比我還像新娘。我一直安慰自己丐黄,他們只是感情好斋配,可當(dāng)我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著灌闺,像睡著了一般艰争。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上桂对,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天甩卓,我揣著相機(jī)與錄音,去河邊找鬼蕉斜。 笑死逾柿,一個胖子當(dāng)著我的面吹牛缀棍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播机错,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼爬范,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了弱匪?” 一聲冷哼從身側(cè)響起青瀑,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎痢法,沒想到半個月后狱窘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡财搁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年蘸炸,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尖奔。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡搭儒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出提茁,到底是詐尸還是另有隱情淹禾,我是刑警寧澤,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布茴扁,位于F島的核電站铃岔,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏峭火。R本人自食惡果不足惜毁习,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望卖丸。 院中可真熱鬧纺且,春花似錦、人聲如沸稍浆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽衅枫。三九已至嫁艇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間为鳄,已是汗流浹背裳仆。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留孤钦,地道東北人歧斟。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像偏形,于是被迫代替她去往敵國和親静袖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內(nèi)容