溫馨提示×

溫馨提示×

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

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

SpringCloud用Zookeeper怎么搭建配置中心

發(fā)布時間:2021-02-22 10:48:54 來源:億速云 閱讀:154 作者:小新 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)SpringCloud用Zookeeper怎么搭建配置中心,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

SpringCloud +Zookeeper完成配置中心,具有如下:

使用場景

  1. 項目配置更改不需要打包,重啟

  2. 提供配置文件的可視化界面

  3. 和springcloud快速整合

為什么使用zookeeper

Zookeeper 作為一個分布式的服務(wù)框架,主要用來解決分布式集群中應(yīng)用系統(tǒng)的一致性問題,它能提供基于類似于文件系統(tǒng)的目錄節(jié)點樹方式的數(shù)據(jù)存儲, Zookeeper 作用主要是用來維護(hù)和監(jiān)控存儲的數(shù)據(jù)的狀態(tài)變化,通過監(jiān)控這些數(shù)據(jù)狀態(tài)的變化,從而達(dá)到基于數(shù)據(jù)的集群管理。

怎么使用

1.pom文件

<!-- 提供zookeeper整合的包 -->
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-zookeeper-config</artifactId>
</dependency>
<!-- springboot 提供監(jiān)聽的 -->
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2.bootstrap.properties文件

提示: springboot項目啟動會優(yōu)先讀取 bootstrap.properties.然后獲取zookeeper中的配置內(nèi)容,才啟動其他配置

#指定zookeeper的地址,多個用逗號拼接
spring.cloud.zookeeper.connect-string=192.168.100.0:2181
#指定springcloud 讀取zookeeper路徑的開始位置
spring.cloud.zookeeper.config.root=springcloud
#開始zk的配置
spring.cloud.zookeeper.config.enabled=true
#zk會在你指定的根目錄下尋找以這個項目名命名的目錄下的配置
spring.application.name=service_config

3.獲取zookeeper中的配置

1.@value方式:

//不能動態(tài)更新值,需要重啟項目
@Value("${com.xxx.username}")
 public String username ;

2.@ConfigurationProperties和@EnableConfigurationProperties方式

//可以動態(tài)修改值,不需要重啟
@ConfigurationProperties(prefix = "com.xxx")
public class UserInfo {
  public String username ;
  public String getUsername() {
    return username;
  }
  public void setUsername(String username) {
    this.username = username;
  }
}

application代碼:

@SpringBootApplication
//支持多個配置類
@EnableConfigurationProperties({xxx.class,abc.class})
public class ServiceConfigApplication {

  public static void main(String[] args) {
    SpringApplication.run(ServiceConfigApplication.class, args);
  }
}

4.獲取配置的規(guī)則

假設(shè):

spring.cloud.zookeeper.config.root=xxxx ;

spring.application.name=abc

zk 路徑:

/xxxx/abc/com/gabo/username

取值:

@value(${com.gabo.username})

5. 檢驗:

啟動的時候輸出: State change: CONNECTED

代表連接zookeeper成功

修改配置中心內(nèi)容,輸出:Refresh keys changed:

代表項目中的值修改成功

關(guān)于“SpringCloud用Zookeeper怎么搭建配置中心”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

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

AI