scservers(二) 配置中心

前言

前面介绍了服务注册发现,这个是一个比较核心的功能,还有一个服务治理相关的是配置中心,作为分布式微服务,统一设置更新成千上万的微服务配置,也已经基本成为必选项,即使你的服务没有那么多,但是热更新配置等对生产配置变动的及时更新都有帮助。

配置中心

目前配置中心这一服务比较多,国内外都有比较成熟的经过生产实践的产品,如百度的disconf,携程的apollo,springcloud 也有原生的配置中心config。国内生产用得多的应该是携程的apollo,功能强大。这里就暂时先使用springcoud全家桶,apollo后续再介绍使用。

config



configserver 依托git 完成版本管理,也有本地模式。同时为了及时更新还需要消息总线来支持其及时更新配置。

config使用

  • server

    配置中心可以将服务注册到注册中心,作为服务提供者供其他应用使用。

    1. 使用

      • 新建springboot 工程,添加config starter 傻瓜包:

        <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
        </dependency>
        <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
      • 在工程启动类添加在工程启动类中,添加注解,启用默认config配置的默认值

        @EnableConfigServer
        
    2. 配置说明

      spring:
      application:
      name: config-server
      cloud:
      config:
      server:
      git:
      uri: https://local/willen/config.git
      searchPaths: /
    3. 示例源码

  • client

  • 5