欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot3.x集成nacos并實現多環(huán)境配置的操作步驟

 更新時間:2024年10月29日 10:43:37   作者:碼農、咚咚陽  
本文詳細介紹了如何在Springboot3.x中集成Nacos2.x版本,包括nacos的安裝、配置更改,以及在集成過程中遇到的問題,如端口設置、依賴版本調整等,文中通過圖文介紹的非常詳細,需要的朋友可以參考下

一、springboot版本

springboot3.0.x 和springboot3.1.x 可直接使用nacos-config-spring-boot-starter 包。

springboot >=3.2.x 需要使用spring-cloud-starter-alibaba-nacos-config包,因為常規(guī)包在我發(fā)布該文時nacos官方還沒更新,已更新的版本只支持到3.1.x,cloud的包2024年4月份進行了更新,可以支持3.2.x及以上版本。

二、nacos安裝部署

nacos1.x安裝、操作請查看官方文檔Nacos 快速開始 | Nacos

使用nacos1.x版本的用戶請忽略【安裝部署】后面的內容,直接跳到 二、springboot3.x集成nacos部分。

springboot3.x集成Nacos2.x升級和安裝、操作請查看官方文檔Nacos 2.0 升級文檔 | Nacos,權限配置請參照Authorization | Nacos

nacos2.0版本相比1.X新增了gRPC的通信方式,因此需要增加2個端口。新增端口是在配置的主端口(server.port)基礎上,進行一定偏移量自動生成。

端口與主端口的偏移量描述
98481000客戶端gRPC請求服務端端口,用于客戶端向服務端發(fā)起連接和請求
98491001服務端gRPC請求服務端端口,用于服務間同步等
7848-1000Jraft請求服務端端口,用于處理服務端間的Raft相關請求

如果存在防火墻或者nginx端口轉發(fā)問題,需要進行相應的端口 暴露配置。如在nginx中,在已經暴露8848(x)的基礎上,需要額外暴露9848(x+1000)。9849和7848端口為服務端之間的通信端口,請勿暴露到外部網絡環(huán)境和客戶端測。

三、springboot3.x集成nacos

1、添加依賴

nacos1.x版本用戶,請?zhí)砑尤缦乱蕾?/p>

        <!--nacos配置中心-->
        <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>nacos-config-spring-boot-starter</artifactId>
            <version>0.2.3</version>
        </dependency>

注意,springboot3.x集成該版本啟動項目時能從nacos加載配置文件信息,但是通過@NacosValue注解取不到值, 需要把@NacosValue的地方替換為@Value注解,但是這樣的話就不能動態(tài)刷新配置了,只能重啟項目生效,只能是權益之計,想要徹底兼容的話就看nacos官方出不出兼容的nacos1.x版本的包了,不然只能升級到nacos2.x版本。

nacos2.x版本用戶,如果你的springboot版本是3.0.x或者3.1.x版本,請?zhí)砑酉旅娴囊蕾?/p>

        <!--nacos配置中心-->
        <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>nacos-config-spring-boot-starter</artifactId>
            <version>0.3.0-RC</version>
        </dependency>

nacos2.x版本用戶,如果你的springboot版本是3.2.x及以上,請?zhí)砑觕loud的包

        <!--nacos配置中心-->
       <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2023.0.1.2</version>
       </dependency>

2、配置文件中添加nacos配置,以常規(guī)包為例,如果是cloud的包,同理參考后面cloud的配置即可。

(1)單個環(huán)境配置

nacos:
  config:
    #是否開啟Nacos配置預加載
    bootstrap:
      enable: true
    data-id: demo-boot-v3
    type: yaml
    group: DEFAULT_GROUP
    auto-refresh: true
    server-addr: 127.0.0.1:8848
    namespace: 0f72f102-23c1-4176-869f-91f31c42a07e
    bootstrap:
      log:
        enable: true
    #如果開啟認證的話需要用戶名和密碼,未開啟的話請注釋
    username: nacos
    password: nacos

(2)多環(huán)境配置,以開發(fā)環(huán)境dev和生產環(huán)境pro為例

spring:
  profiles:
    #指定要加載的配置
    active: dev
 
nacos:
  config:
    #是否開啟Nacos配置預加載
    bootstrap:
      enable: true
    data-id: demo-boot-v3
    type: yaml
    group: DEFAULT_GROUP
    auto-refresh: true
 
---
#開發(fā)環(huán)境dev
spring:
  config:
    activate:
      on-profile: dev
nacos:
  config:
    #nacos的地址,替換成測試環(huán)境的實際地址即可
    server-addr: 127.0.0.1:8848
    #命名空間,替換為測試環(huán)境的實際命名空間即可
    namespace: 0f72f102-23c1-4176-869f-91f31c42a07e    
    bootstrap:
      log:
        enable: true
    #如果開啟認證的話需要用戶名和密碼
    username: nacos
    password: nacos
 
---
#生產環(huán)境pro
spring:
  config:
    activate:
      on-profile: pro
nacos:
  config:
    #nacos的地址,替換成線上的實際地址即可
    server-addr: 127.0.0.1:8848
    #命名空間,替換為線上的實際命名空間即可
    namespace: 0f72f102-23c1-4176-869f-91f31c42a07e
    bootstrap:
      log:
        enable: true
    #如果開啟認證的話需要用戶名和密碼
    username: nacos
    password: nacos

(3)spring cloud nacos配置參考

spring:
  profiles:
    active: local
  config:
    import:
      #使用nacos配置 demo-boot-v3對應上面的data-id
      nacos:demo-boot-v3
  cloud:
    nacos:
      config:
        file-extension: yaml
        group: DEFAULT_GROUP
        refresh-enabled: true
 
---
# local
spring:
  config:
    activate:
      on-profile: local
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:8848
        namespace: 8d582ff3-f890-4a67-b75c-e6c20a86534c
        #如果開啟認證的話需要用戶名和密碼,未開啟的話請注釋
        username: nacos
        password: nacos
 
---
# dev
spring:
  config:
    activate:
      on-profile: dev
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:8848
        namespace: 8d582ff3-f890-4a67-b75c-e6c20a86534c
        #如果開啟認證的話需要用戶名和密碼,未開啟的話請注釋
        username: nacos
        password: nacos
 
---
# pro
spring:
  config:
    activate:
      on-profile: pro
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:8848
        namespace: 8d582ff3-f890-4a67-b75c-e6c20a86534c
        #如果開啟認證的話需要用戶名和密碼,未開啟的話請注釋
        username: nacos
        password: nacos

注意這里nacos:demo-boot-v3是一個整體值,中間的冒號后面沒有空格,他們的 key是:spring.config.import,demo-boot-v3換成你的data-id即可。

3、啟動項目

以上就是SpringBoot3.x集成nacos并實現多環(huán)境配置的操作步驟的詳細內容,更多關于SpringBoot3.x nacos多環(huán)境配置的資料請關注腳本之家其它相關文章!

相關文章

  • Java中BigDecimal除法使用不當導致精度問題

    Java中BigDecimal除法使用不當導致精度問題

    本文主要介紹了Java中BigDecimal除法使用不當導致精度問題,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • SpringBoot 文件或圖片上傳與下載功能的實現

    SpringBoot 文件或圖片上傳與下載功能的實現

    這篇文章主要介紹了SpringBoot 文件或圖片上傳與下載功能的實現,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • JAVA 添加、修改和刪除PDF書簽的示例代碼

    JAVA 添加、修改和刪除PDF書簽的示例代碼

    這篇文章主要介紹了JAVA 添加、修改和刪除PDF書簽的示例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-06-06
  • 深入聊一聊JDK中的Map和Set

    深入聊一聊JDK中的Map和Set

    這篇文章主要給大家介紹了關于JDK中Map和Set的相關資料,文中通過示例代碼以及圖文介紹的非常詳細,對大家學習或者使用jdk具有一定的參考學習價值,需要的朋友可以參考下
    2022-12-12
  • 利用ssh實現服務器文件上傳下載

    利用ssh實現服務器文件上傳下載

    這篇文章主要為大家詳細介紹了如何利用ssh實現服務器文件上傳下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Java ArrayList 實現實例講解

    Java ArrayList 實現實例講解

    ArrayList是基于數組實現的,是一個動態(tài)數組,其容量能自動增長,類似于C語言中的動態(tài)申請內存,動態(tài)增長內存。這篇文章主要介紹了java ArrayList 實現的相關資料,需要的朋友可以參考下
    2016-11-11
  • spring boot 下支付寶的開箱既用環(huán)境

    spring boot 下支付寶的開箱既用環(huán)境

    這篇文章主要介紹了spring boot 下支付寶的開箱既用環(huán)境包括使用場景和使用技巧,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-10-10
  • 解決static類使用@Value獲取yml文件獲取不到的問題

    解決static類使用@Value獲取yml文件獲取不到的問題

    在靜態(tài)類中直接使用@Value注解無法獲取yml文件中的配置,解決方案是在工具類Utils中創(chuàng)建靜態(tài)的setter方法,并從外部類ServiceClass中調用這個方法來設置值,這種方法通過外部調用來間接設置靜態(tài)變量的值,從而成功讀取yml配置
    2024-09-09
  • java線程池詳解及代碼介紹

    java線程池詳解及代碼介紹

    這篇文章主要介紹了java中線程池的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-08-08
  • 帶你了解Java數據結構和算法之前綴,中綴和后綴表達式

    帶你了解Java數據結構和算法之前綴,中綴和后綴表達式

    這篇文章主要為大家介紹了Java的前綴,中綴和后綴表達式 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論