Config的批量刷新以及自动刷新

1、注:rabbitmq不支持springboot2.1.0.RELEASE版本,如果使用该版本会报错

2、configServer代码 和 手动刷新部分的configServer一致https://blog.csdn.net/weixin_42152604/article/details/86609866

3、configClient

pom.xml

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <spring-cloud.version>Finchley.SR1</spring-cloud.version>
    </properties>
    <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>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>
        <!--rabbitmq的支持-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-amqp</artifactId>
        </dependency>
        <!--端点-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
    </dependencies>

 

bootstrap.yml

server:
  port: 8081
spring:
  cloud:
    config:
      uri: http://localhost:8080
      label: master
      profile: bar
  application:
    name: foo
  rabbitmq:     #rabbitmq部分
    host: localhost
    port: 5672
    username: guest
    password: guest
management:     #暴露端点部分
  endpoints:
    web:
      exposure:
        include: bus-refresh

启动类和调用类均和手动刷新代码一致https://blog.csdn.net/weixin_42152604/article/details/86609866

4、启动ConfigServer,分别在两个端口启动两个ConfigClient

首次调用

更改配置文件之后,首先调用http://localhost:8081/actuator/bus-refresh这个端点,只调用8081即可,这时候会批量刷新,Rabbitmq会将消息推送到别的端点

然后重新访问,发现配置已经更改

5、github添加 webhooks

添加之后我们改变配置,就能实现自动更新 ,不过我们本地的项目都没有放在公网上,所以github不到我们自己本地的项目

posted @ 2019-01-23 17:37  柚子味儿的西瓜  阅读(30)  评论(0)    收藏  举报