SpringCloud的学习记录(4)
本篇基于上一篇写的, 在git上更改配置后, eureka-client如何更新.
我们只需要在配置文件中配置 spring-cloud-starter-bus-amqp;
这就是说我们需要装rabbitMq;
一定要先安装erlang, 成功后再安装rabbitmq. 切记
1. 先去下载erlang, 我的电脑是64位的,下载的是OTP 21.3 Windows 64-bit Binary File.
2. 点击rabbitmq下载. 至于怎么使用 rabbitmq, 搜索引擎下.
安装成功后, 启动rabbitmq, 如下
或则cmd到安装你的rebbitmq目录, 到sbin的目录, 然后输入rabbitmq-plugins enable rabbitmq_management
看到如下的打印,可以说明rabbitmq运行成功了.
然后浏览器打开http://localhost:15672, 用户名和密码都是guest, 界面如下
说明启动成功. 下面开始改造config-server和eureka-client项目.
分别在config-server和eureka-client项目里的pom.xml添加如下配置
<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>
然后在config-server的application.yml文件内容如下:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
server:
port: 8765
spring:
application:
name: config-server
cloud:
config:
server:
git:
uri: https://github.com/xxx 你的git仓库地址
searchPaths: repos
username: 你的git用户名
password: 你的git密码
label: master
rabbitmq:
host: 127.0.0.1
port: 5672 // 注意这里的端口是5672,而我们刚才浏览器打开的http://localhost:15672端口是15672
username: guest
password: guest
management:
endpoint:
health:
show-details: always
endpoints:
web:
exposure:
include: '*'
然后在eureka-client的application.yml文件内容如下:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
server:
port: 8762
spring:
application:
name: eureka-client
rabbitmq:
host: 127.0.0.1
port: 5672
username: guest
password: guest
management:
endpoint:
health:
show-details: always
endpoints:
web:
exposure:
include: '*'
用Run DashBoard启动如下项目:
1. 先启动eureka-server项目
2. 再启动config-server项目, Event log里能看到类似如下内容:
o.s.a.r.c.CachingConnectionFactory: Attempting to connect to: [127.0.0.1:5672]
o.s.a.r.c.CachingConnectionFactory: Created new connection: rabbitConnectionFactory#40195a:0/SimpleConnection@5d73bd [delegate=amqp://guest@127.0.0.1:5672/, localPort= 4586]
3. 最后启动eureka-client项目, Event log里能看到类似如下内容(git仓库地址配置好):
c.c.c.ConfigServicePropertySourceLocator: Fetching config from server at : http://localhost:8765/
c.c.c.ConfigServicePropertySourceLocator: Located environment: name=eureka-client, profiles=[dev], label=master, version=addadb9ed2392ae7f6dddc63a5be60361e2ad8d6, state=null
b.c.PropertySourceBootstrapConfiguration: Located property source: CompositePropertySource {name='configService', propertySources=[MapPropertySource {name='configClient'},
MapPropertySource {name='https://github.com/xxx 你的git仓库地址/repos/eureka-client-dev.properties'}]}
启动完成上面三个项目后, 在浏览器打开eureka-client里的api: http://localhost:8762/testone/config
这里从git仓库取出来的message内容是hello spring io –111111, foo的内容是foo version 111111.
现在我们改变git仓里里的message内容.
如何安装curl,请戳这里.
打开cmd, 输入 curl -X POST http://localhost:8765/actuator/bus-refresh
或则用post man发送:
在config-server和eureka-client这两个项目的Event log里看到类似如下的内容:
o.s.cloud.bus.event.RefreshListener : Received remote refresh request. Keys refreshed []
再看rabbitmq页面内容变化, 刷新页面http://localhost:15672, 显示如下:
最后页面刷新http://localhost:8762/testone/config, 就可以看到改的内容了.
我把message改成hello spring io -111111 add message(多了add message内容).
SpringCloud的学习记录(4)的更多相关文章
- SpringCloud的学习记录(1)
最近一段时间重新学习一边SpringCloud(有半年不用了),这里简单记录一下. 我用的是IntelliJ IDEA开发工具, SpringBoot的版本是2.1.3.RELEASE. 1. 构建M ...
- SPRINGCLOUD 开发学习记录
一个简单的微服务系统:服务注册和发现,服务消费,负载均衡,断路器,智能路由,配置管理 服务注册中心: eureka是一个高可用组件,没有后端缓存,每一个实例注册后向注册中心发送心跳,默认情况下,eru ...
- SpringCloud的学习记录(8)
这一章节讲zipkin-server. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Artifact等 ...
- SpringCloud的学习记录(7)
这一章节讲zuul的使用. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Artifact等信息, 这里 ...
- SpringCloud的学习记录(6)
这一章节讲fegin的使用. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Artifact等信息, 这 ...
- SpringCloud的学习记录(5)
这一章节讲如何使用ribbon和hystrix. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Arti ...
- SpringCloud的学习记录(3)
这一章节讲搭建config-server的项目. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Arti ...
- SpringCloud的学习记录(2)
这一章节主要讲如何搭建eureka-client项目. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和A ...
- SpringCloud基础教程学习记录
这个学习记录是学习自翟永超前辈的SpringCloud的基础教程. 自己写这个教程的目的主要是在于,想要更凝练总结一些其中的一些实用点,顺便做个汇总,这样自己在复习查看的时候更加方便,也能顺着自己的思 ...
随机推荐
- 第一章:初识JAVA
一:计算机语言发展史 机器语言:典型的二进制文件和计算机交流. 汇编语言: 通过大量的标识符表示一些基本操作来和计算机做交流. 高级语言:通过常见的英语指令来编写程序,完成沟通 常见高级语言 Java ...
- log4j配置文件及java调用 每个级别输出到不同的文件
#配置根Logger log4j.rootLogger = DEBUG , RollingFile,CONSOLE #文件大小达到一定尺寸的时候创建一个新的文件 log4j.appender.Roll ...
- select和epoll原理和区别
对于select和poll,其主要原理跟epoll不同 poll和select的共同点就是,对全部指定设备(fd)都做一次poll,当然这往往都是还没有就绪的,那就会通过回调函数把当前进程注册到设备的 ...
- 2018-2019-2 20165320 《网络对抗技术》 Exp6 信息搜集与漏洞扫描
2018-2019-2 20165320 <网络对抗技术> Exp6 信息搜集与漏洞扫描 一.实践目标 掌握信息搜集的最基础技能与常用工具的使用方法. 二.实践内容 1.各种搜索技巧应用 ...
- css3文本域焦点烟花效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- POJ1769(线段树+DP)
飞翔 题意 : 给定一个区间长度 n ,接下来给出 m 个子区间,要求最少选出多少个区间才能使得 1~n 这个区间被所选的所有子区间覆盖 分析: 首先是动态规划,dp[i]表示把最大值从1位置搞到第i ...
- django 视图view
视图里一般是函数和类,需要返回响应. 试图分为2种:2. CBV(class base view) FBV(function base view) from django.views import V ...
- Go语言基础之11--Goroutine
一.创建goroutine 1)在go语言中,每一个并发的执行单元叫做一个goroutine: 2)当一个程序启动时,其主函数即在一个单独的goroutine中运行,一般这个goroutine是主go ...
- linux日志--查找过滤
- centos7-网络与防火墙常用命令
1.网络配置 vi /etc/sysconfig/network-scripts/ifcfg-ens33 BOOTPROTO="static" IPADDR=192.168.163 ...