博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(十六) 整合spring cloud云架构 -使用spring cloud Bus刷新配置
阅读量:6377 次
发布时间:2019-06-23

本文共 2026 字,大约阅读时间需要 6 分钟。

我们使用spring cloud分布式微服务云架构做了b2b2c的电子商务系统,除了架构本身自带的系统服务外,我们将b2b2c的业务服务进行了细粒度拆分,做成了不同的业务微服务。

当我们的业务系统越来越庞大复杂的时候,各种配置也会随之增多。配置文件只要一修改,会对commonservice-config配置中心先停止服务,然后再重新启动,最后使配置生效。

如果服务少,我们可以手动方式来启动,但是对业务和系统的稳定性肯定有一定的影响。

如果是成百上千的服务都靠手动操作,我估计运维人员或技术人员会疯掉的。

针对以上问题,commonservice-config服务端和业务微服务分别做了相关的配置,服务端负责将git(svn或本地文件系统)中存储的配置文件进行配置化(我们使用的是本地配置方案,方便直接将配置文件更新到linux上),

业务微服务通过配置从服务端配置中心获取相关配置,如果配置文件变动了,通过刷新业务微服务的方式,将最新的配置信息获取。

spring cloud Bus通过一个轻量级消息代理连接分布式系统的节点。这可以用于广播状态更改(如配置更改)或其他管理指令。

接下来,我们就来实施通过spring cloud Bus方案,动态刷新服务端配置,具体步骤如下:

  1. 业务微服务配置(以honghu-member-servcie会员服务为例):

pom文件配置:

        
org.springframework.boot
spring-boot-starter-actuator
org.springframework.cloud
spring-cloud-starter-bus-amqp

yml文件配置:

server:  port: 5012spring:   application:    name: honghu-member-client  profiles:    active: dev,discoveryClient  cloud:    config:      discovery:         enabled: true        service-id: commonservice-config-server      name: honghu-member      profile: dev    bus:      trace:        enabled: true  #开启消息跟踪            rabbitmq:    host: 192.168.1.254    port: 5672    username: honghu    password: honghu   eureka:  client:    serviceUrl:      defaultZone: http://honghu:123456@localhost:8761/eureka/  instance:    prefer-ip-address: truelogging:  level:    root: INFO    org.springframework.security: INFOmanagement:  security:    enabled: falsesecurity:  basic:    enabled: false
  1. 查看注册中心,commonservice-config、honghu-member-service服务是否已经注册成功
  1. 访问一下profile,获取profile对应的配置信息(原配置):

访问 ==》 访问结果:123456

  1. 修改config配置中心的配置文件,将profile=123456修改为honghu123456

再次访问 ==》 访问结果:123456

  1. 使用spring cloud bus 刷新方案(使用post man测试工具进行测试)

再次访问 ==》 访问结果:honghu123456

到此,整个commonservice-config配置中心动态刷新方案整理完毕!

欢迎大家和我一起学习spring cloud构建微服务云架构,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,大家来一起探讨spring cloud架构的搭建过程及如何运用于企业项目。

完整项目的源码来源 技术支持1791743380

转载地址:http://kixqa.baihongyu.com/

你可能感兴趣的文章
js 字符串操作函数集合
查看>>
nullnullCF 312B(Archer-等比数列极限求和)
查看>>
消息函数windows 程序设计 第三章 (下)
查看>>
java中调用web中的jsp或servlet去通知它们做一些操作
查看>>
Javascript 坦克大战
查看>>
JavaScript自动设置IFrame高度(兼容各主流浏览器)
查看>>
Linux内核中__init, __initdata, __initfunc(), asmlinkage, ENTRY(), FASTCALL()等作用
查看>>
leetcode -- Two Sum
查看>>
Windows多线程
查看>>
Resolve PSExec "Access is denied"
查看>>
C语言局部变量和全局变量问题汇总
查看>>
android 下的网络图片加载
查看>>
Paip.语义分析----情绪情感词汇表总结
查看>>
Linux下软件安装,卸载,管理
查看>>
View Programming Guide for iOS_读书笔记[正在更新……]
查看>>
排查VMWare虚拟机的性能问题
查看>>
yum安装Apache Web Server后各个文件存放位置
查看>>
一些基础密码算法的实现
查看>>
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
查看>>
Android于JNI调用列出的程序
查看>>