springcloud 配置中心git


一、通過客戶端刷新,使配置文件生效

1、創建遠程倉庫,獲取遠程倉庫地址(省略),application.yml

  

 

2、創建服務端工程

3、添加依賴

<dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-server</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
    </dependencies>

4、加注解

  

@EnableDiscoveryClient
@EnableConfigServer //激活對配置中心的支持
@SpringBootApplication
public class SpringCloudConfigServerMqApplication {

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

}

 

5、修改配置application.properties

spring.application.name=spring-cloud-config-server
server.port=8500

spring.cloud.config.server.git.uri=https://***.git
spring.cloud.config.server.git.username=***
spring.cloud.config.server.git.password=***

eureka.client.serviceUrl.defaultZone=http://**:***/eureka/

 

6、請求方式

 

1、application-{profiles}.yml請求
http://192.168.0.131:8500/application-local.yml
http://192.168.0.131:8500/application-test.yml
http://192.168.0.131:8500/application-prod.yml
2、application/{profiles}/{lable}
http://192.168.0.131:8500/application/local/master
http://192.168.0.131:8500/application/test/master
http://192.168.0.131:8500/application/prod/master
3、{lable}/application-{profiles}.yml
http://192.168.0.131:8500/master/application-local.yml
http://192.168.0.131:8500/master/application-test.yml
http://192.168.0.131:8500/master/application-prod.yml

 

7、創建客戶端工程

8、添加依賴

  

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

 

9、加注解

@SpringBootApplication
@EnableDiscoveryClient
public class SpringCloudProviderDynastyMqApplication {

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

}

10、修改配置bootstrap.yml

spring:
  application:
    name: dynasty
  cloud:
    config:
      uri: http://192.168.0.131:8500
      profile: prod
      label: master
management:
  endpoints:
    web:
      exposure:
        include: refresh,health,info

11、發送請求

  

12、修改遠程倉庫的值,使用postman刷新

 

此種刷新方式的缺點在於:配置文件有變化時,需要客戶端主動刷新,當客戶端有很多時,刷新不是很方便,,希望有一種方式可以通過服務端刷新

二、使用kafka通過刷新服務端來使配置生效

   1、服務端修改

    1.1新增依賴

    

     <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!-- kafka依賴 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-kafka</artifactId>
        </dependency>

 

    1.2修改配置

  

eureka:
    client:
      serviceUrl:
        defaultZone: http://ip:port/eureka/
server:
  port: 8500
spring:
  application:
    name: spring-cloud-config-server-mq
  cloud:
    config:
      server:
        git:
          uri: https://giturl.git
          username: username
          password: password
    bus:
      enabled: true
    stream:
      kafka:
        binder:
          brokers: 192.168.0.128:9092,192.168.0.129:9092,192.168.0.130:9092
management:
  endpoints:
    web:
      exposure:
        include: "*"

    1.3啟動項目

  2、客戶端修改

    2.1添加依賴

    

<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-bus-kafka</artifactId>
</dependency>

 

    2.2修改配置

spring:
  application:
    name: dynasty
  cloud:
    config:
      uri: http://192.168.0.131:8500
      profile: prod
      label: master
    bus:
      enabled: true
  kafka:
    bootstrap-servers: 192.168.0.128:9092,192.168.0.129:9092,192.168.0.130:9092

 

    2.3啟動項目

  3、請求示例

     3.1git配置

      

  

     3.2請求

    

    3.3修改git配置

    

    3.4調用刷新接口

    

    3.5再次請求

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM