溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Nacos如何在Springcloud 中使用

發(fā)布時間:2020-12-08 15:10:02 來源:億速云 閱讀:827 作者:Leah 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)Nacos如何在Springcloud 中使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

Nacos是什么

和Eureka,zookeeper,consul相同,Nacos也是一個注冊中心組件咯,當(dāng)然是,不過它不僅僅是注冊中心。Nacos也是一個配置中心,比如SpringCloud中的Config,將配置文件版本化管理。那么Nacos到底是什么呢, 總結(jié)為官網(wǎng)一句話就是:Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡單易用的特性集,幫助您快速實現(xiàn)動態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理。

下面僅介紹nacos的配置,不涉及深層的原理。

1.安裝和下載

選擇合適穩(wěn)定的版本即可。下載完直接解壓即可。

2.使用注意事項

啟動單個nacos如果報錯可以先去配置好數(shù)據(jù)庫模式和單機模式啟動。

conf文件夾下找到application.properties文件添加如下配置。根據(jù)自己的數(shù)據(jù)庫情況配置。

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root

同理此目錄下還有數(shù)據(jù)庫的一些文件。導(dǎo)入自己的MySQL中

Nacos如何在Springcloud 中使用

配置單機模式,在bin目錄下面找到startup.cmd文件更改,設(shè)為standalone單機模式。

Nacos如何在Springcloud 中使用

在bin目錄下面啟動cmd窗口,然后運行startup.cmd即可啟動。默認端口8848訪問地址

http://localhost:8848/nacos/

密碼也是默認nacos

Nacos如何在Springcloud 中使用

3.服務(wù)注冊

編寫測試的服務(wù)注冊應(yīng)用。

關(guān)鍵的pom依賴,其他的和之前的cloud應(yīng)用一樣。

   <dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>

yml文件

server:
 port: 9003
spring:
 application:
  name: nacos-payment-provider
 cloud:
  nacos:
   discovery:
    server-addr: localhost:8848 #配置Nacos地址
management:
 endpoints:
  web:
   exposure:
    include: '*'

測試controller

@RestController
public class PaymentController {
  @Value("${server.port}")
  private String serverport;

  @GetMapping(value = "/payment/nacos/{id}")
  public String getpayment(@PathVariable("id") Integer id){
    return "Hello Nacos Discovery: " + serverport + "\t id: " + id;
  }
}

啟動項目發(fā)現(xiàn)

Nacos如何在Springcloud 中使用

在服務(wù)列表可以查看到,而且很多詳細信息可以自行查看,且配置多個項目的時候,nacos可以自帶負載均衡的功能。

4.配置中心

之前在config和bus中為了完成消息配置等的同步和全局廣播需要費很大的功夫,而nacos直接省去了很多的復(fù)雜操作,用可視化的操作完成了config的配置。

創(chuàng)建配置應(yīng)用類

pom關(guān)鍵的依賴

<dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>
    <!-- SpringCloud ailibaba nacos-->
    <dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>

application.yml

spring:
 profiles:
#  active: dev #表示開發(fā)環(huán)境
#  active: test
   active: info

bootstrap.yml,比application的權(quán)限更大

server:
 port: 3377
spring:
 application:
  name: nacos-config-client
 cloud:
  nacos:
   discovery:
    server-addr: localhost:8848 #Nacos服務(wù)注冊中心地址
   config:
    server-addr: localhost:8848 #Nacos作為配置中心地址
    file-extension: yaml #指定yaml格式配置
    group: TEST_GROUP
    namespace: 8f9b7283-0c9a-45f8-92d5-ca116f3ed1b9
#${prefix}-${spring.profile.active}.${file-extension} dataid的格式
# ${spring.application.name}-${spring.profile.active}.${file-extension}
# nacos-config-client-dev.yml

配置類controller

@RestController
@RefreshScope
public class ConfigController {
  @Value("${config.info}")
  private String configInfo;

  @GetMapping("/config/info")
  public String getConfigInfo() {
    return configInfo;
  }
}

在配置中心配置信息。

Nacos如何在Springcloud 中使用

Nacos如何在Springcloud 中使用

用自己的controller測試。

Nacos如何在Springcloud 中使用

成功訪問到配置的信息(此處是我之前設(shè)置好的其他配置信息)

一些配置信息含義

Nacos如何在Springcloud 中使用

命名空間可以自己設(shè)置,相當(dāng)于不同的工作區(qū)間。

Nacos如何在Springcloud 中使用

Nacos如何在Springcloud 中使用

在自己的yml文件中設(shè)置好不同的信息,就可以匹配不同地方的信息。

看完上述內(nèi)容,你們對Nacos如何在Springcloud 中使用有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI