SpringCloud 는 Zookeeper 를 설정 센터 의 예제 로 사용 합 니 다.
5562 단어 SpringCloudZookeeper배치 센터
관련 의존
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.5</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>zkdemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>zkdemo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>2020.0.2</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zookeeper-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
프로필 application.yml
spring:
application:
name: zkdemo
profiles:
active: dev
cloud:
zookeeper:
# Zookeeper ,
connect-string: localhost:2181
# Zookeeper
config:
import: 'optional:zookeeper:'
server:
port: 8005
Zookeeper 에 설정 노드 와 데 이 터 를 만 듭 니 다.설정 루트 노드/config 만 들 기:
[zk: localhost:2181(CONNECTED) 3] create /config
Created /config
전역 설정 노드/config/application 을 만 들 고/config/application 노드 의 설정 은 모든 서 비 스 를 사용 할 수 있 습 니 다.
[zk: localhost:2181(CONNECTED) 4] create /config/application
Created /config/application
전역 설정 추가 nickname 1:
[zk: localhost:2181(CONNECTED) 5] create /config/application/nickname1
Created /config/application/nickname1
zkdemo 서비스 dev 환경의 설정 노드/config/zkdemo,dev 를 만 듭 니 다.이 노드 의 설정 은 특정한 서비스의 특정한 환경 에서 만 사용 할 수 있 습 니 다.이 노드 의 설정 과 전체 설정 이 충돌 할 때 이 노드 의 설정 을 우선 사용 합 니 다.
[zk: localhost:2181(CONNECTED) 6] create /config/zkdemo,dev
Created /config/zkdemo,dev
zkdemo 서비스 dev 환경 설정 nickname 2 추가:
[zk: localhost:2181(CONNECTED) 7] create /config/zkdemo,dev/nickname2 buhe
Created /config/zkdemo,dev/nickname2
최종 구 조 는 다음 과 같다.테스트 클래스
@SpringBootTest
class ZkdemoApplicationTests {
@Value("${nickname1}")
private String nickname1;
@Value("${nickname2}")
private String nickname2;
@Test
public void testZkConfig() {
System.out.println(" application :nickname1=" + nickname1);
System.out.println(" zkdemo :nickname2=" + nickname2);
}
}
출력 결과:application 전역 설정 에서 설정 읽 기:nickname 1=포 화
zkdemo 서비스 설정 에서 설정 읽 기:nickname 2=buhe
사용자 정의 Zookeeper 설정
기본 Zookeeper 설정 을 사용 하지 않 으 려 면 application.yml 에서 변경 할 수 있 습 니 다.
spring:
cloud:
zookeeper:
config:
enabled: true
root: configuration
default-context: apps
profile-separator: '::'
enabled:이 값 을 false 로 설정 하면 Zookeeper 설정 을 사용 하지 않 습 니 다.기본 트 루 입 니 다.루트:루트 노드 이름 을 설정 합 니 다.기본 값 은 config 입 니 다.
default-context:전역 설정 노드 이름,기본 값 은 application 입 니 다.
profile-separator:서비스 이름과 환경 이름 사이 의 구분 자 를 설정 합 니 다.기본 값 은 영어 쉼표 입 니 다.
이상 은 SpringCloud 에서 Zookeeper 를 설정 센터 로 사용 하 는 예제 에 대한 상세 한 내용 입 니 다.Zookeeper 를 설정 센터 로 사용 하 는 것 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SpringCloud OAuth2 + JWT 인증 인증(一) 인증 서버Spring Cloud oAuth2(1) 라이센스 서버 구축 및 액세스 Spring Cloud oAuth2(2) 리소스 서버 구축 및 테스트 SpringCloud OAuth2 + JWT 인증 인증(一) 인증 서버 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.