3 Star 3 Fork 2

一只叫做大鸟的动物 / consul-pusher

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

consul-pusher

运行环境

  • JDK 1.8
  • Maven 3.3.9
  • Spring Boot 2.0.0.RELEASE
  • Spring cloud Finchley.M8

目录结构

整个工程依照Spring Boot工程的目录结构创建,在com.consul.pusher包下有四个类,其中ConsulApplication的作用就不用说了,它是整个服务的启动类。剩下的三个类说明如下:

  • ConsulConfig:提供加载配置到Consul中的操作。它定义了一个私有的init方法,这个方法被@PostConstruct注解所标记,主要作用是在ConsulConfig依赖注入完成之后读取指定配置文件,将文件里的配置信息推送到Consul配置中心中。该方法在整个应用生命周期中只执行一次,定义为私有的主要是不允许外部调用,保证安全性

  • ConsulServiceConsulServiceImplConsulServiceImpl实现了ConsulService接口,主要提供Consul配置中心业务逻辑操作,它主要封装了Consul java client的一些方法。

resources目录下的bootstrap.ymlapplication.yml分别为微服务全局配置文件和业务信息配置文件。在服务启动期间,application.yml配置文件的内容会被ConsulConfig类的init方法读取并推送到Consul配置中心。在这里我们没有将bootstrap.yml的文件内容推送到Consul配置中心,主要是考虑到:

  • bootstrap.yml里定义的配置信息不经常修改

  • Spring Boot天生不支持动态修改数据库、ES连接信息。bootstrap.yml里的定义的数据库连接、ES集群等信息通过Consul配置中心修改后不能生效,还需要重启应用才能生效。并且,需要修改数据库连接、ES连接信息的场景的大部分是因为当前服务不可用产生的,服务的高可用不应由Consul来维护

构建

mvn clean package

空文件

简介

暂无描述 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/Viking/consul-pusher.git
git@gitee.com:Viking/consul-pusher.git
Viking
consul-pusher
consul-pusher
master

搜索帮助