spring cloud五大组件之config

前沿:
spring cloud config是靠Bus用于支撑配置的动态刷新。这项技术是基于消息队列来实现的。spring cloud bus使用消息队列形成一个消息总线,每个需要获取配置的服务都需要与总线进行连接,获得各自的channel。配置中心就是通过消息总线,通知各个客户端通过channel获取最新的配置。
在这里插入图片描述
为什么使用消息队列?
是因为消息队列支持发布订阅模式,在配置中心发布新配置之后,就通过发布订阅广播给所有的客户端,获取最新的配置。

当然更多更详细的底层知识,大家可以自行百度。下面说说具体在项目中如何配置:

1、config server

一、application.yml文件
ps:rabbitmq的默认用户guest为管理员用户,默认只能本地登录,所以在进行操作时,可以新增用户然后赋予权限,直接用guest用户登录会报错
在这里插入图片描述
二、pom文件

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-config-server</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-bus-amqp</artifactId>
		</dependency>

三、在启动类上添加注解
在这里插入图片描述

2、config服务端

一、pom文件

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

二、application.yml文件
在这里插入图片描述
三、在github上添加配置文件
在这里插入图片描述

四、添加测试API

 @Value("${test.testName}")
    String testName;
 @GetMapping("/sayHiMember")
    public String sayHiMember(String name) {
        return "SayHi会员:" + name + ":" + ":从Git上取文件配置:" + testName;
    }

3、启动项目

启动顺序为:注册中心–>config server–>网关–>config client(首先的保证rabbit mq正常启动)

4、通过网关去访问client的API

http://localhost:9528/SERVICE-PRODUCT/sayHiMember?name=张三
返回数据为:
在这里插入图片描述
修改github配置文件内容为
test.testName = lisi-hello you are success???test123ZYQ-FJC-two

然后用post方法在config服务端运行http://localhost:7878/actuator/bus-refresh
在这里插入图片描述

然后再在浏览器上访问http://localhost:9528/SERVICE-PRODUCT/sayHiMember?name=张三,得到数据如下:
在这里插入图片描述
发现已经动态刷新了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值