• SpringCloud Bus实现配置刷新


    要想实现配置刷新,首先得有项目基础结构

    项目一: 注册中心

    项目二: 配置中心

    项目三: 客户端

    先启动注册中心

    然后启动配置中心

    然后在不同端口启动客户端的多个实例,这些实例都是通过bootstrap.properties连接到配置中心后,加载相应配置后启动的.

    成功完成上述基础设施,才开始关注配置刷新.

    ==========================================================================================

    SpringCloud Bus实现配置刷新只需要做以下几点:

    1. 在配置中心和客户端都添加依赖: spring-cloud-starter-bus-amqp

        说明: bus表示引入的是SpringCloud Bus的依赖, amqp表示bus的消息传递功能是通过rabbitmq实现.(如果想通过kafka实现,则对应的依赖是spring-cloud-starter-bus-kafka)

    2. 在配置中心和客户端都添加连接消息中间件的配置,由于amqp用的是rabbitmq消息中间件,因此对应的配置是:

    spring.rabbitmq.host=localhost
    spring.rabbitmq.password=wwx614831
    spring.rabbitmq.username=wwx614831
    spring.rabbitmq.port=5672

    3. 在配置中心的配置中加入不进行权限检查的配置:

    management.security.enabled=false

    4. 使用:

      通过获取配置文件中一个示例属性值,来判断配置是否真的刷新

      刷新前: 获取name属性值=wangxuejian

      更改为: name=xuejian

      刷新: 调用配置中心的bus/refresh接口

      看效果: 获取name属性值变成xuejian,且多个实例都改变了.

    5. 注意:

      把需要刷新配置的Bean上标注@RefreshScope注解.

    总结:

    1. 首先搭建基础架构,实现配置中心和注册中心的正常使用

    2. 使用什么消息中间件,就引入什么中间件的依赖

    3. 跳过安全检查,避免401问题

  • 相关阅读:
    ubuntu系统上常用的开发工具
    wamp环境下安装pear
    PHP中preg_match_all函数用法使用详解
    晚睡对策
    iphone相关
    090213 阴
    月曜日の予定(10:30までREVIEW  10:00まで完成予定)
    一个通知
    我还没走
    星期5
  • 原文地址:https://www.cnblogs.com/wangxuejian/p/13622139.html
Copyright © 2020-2023  润新知