SpringCloud-Eureka之配置中心配置
一、什么是配置中心
随着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,
需要的配置文件随着服务增加而不断增多。某一个基础服务信息变更,都会引起一系列的更新和重启,
运维苦不堪言也容易出错,配置中心便是解决此类问题的灵丹妙药。
二、Spring Cloud Config
Spring Cloud Config项目是一个解决分布式系统的配置管理方案。它包含了Client和Server两个部分,
server提供配置文件的存储、以接口的形式将配置文件的内容提供出去,client通过接口获取数据、并依据此数据初始化自己的应用。
Spring cloud使用git或svn存放配置文件,默认情况下使用git,我们先以git为例做一套示例
三、构建项目
构建多模块的Maven项目
springcloud0502 主模块 quickstart项目
eureka-server-cluster 子模块 springboot项目
eureka-cluster1/eureka-cluster1(2个注册中心集群)
eureka-provider 子模块 springboot项目
生产者集群(provider1/provider2),同时此生产者也访问了配置中心里面的配置信息
eureka-consumer 子模块 springboot项目
Feign访问生产集群,Feign默认集成了Ribbon,默认实现了负载均衡的效果。
config-server 子模块 springcloud的配置中心
config-server1/config-server1(2个配置中心集群)
配置config-server的POM依赖
通过start.spring.io创建,dependencies要选择Config Server,会有两个选项,要先其中带有git/svn的
网址如需下:
https://start.spring.io/
点击下载,打开pom 复制到server-config子模块中
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.zking</groupId>
<artifactId>server-config</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>server-config</name>
<description>配置中心</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.RELEASE</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>