Spring cloud系列三 Spring Cloud 配置中心集群

1. 概述

上篇文章Spring cloud系列二 Spring Cloud 配置中心的基本用法我们介绍了配置中心的基本用法,但是这个用法有个缺点,只有一台配置服务。如果这台服务挂掉,则整个服务不可用。为了提高配置中心的可靠性,本节我们介绍将配置中心注册成服务,客户端通过注册中心获取服务。这样可以保证有多台服务可以提供服务,如果一台服务出问题,则客户端自动访问另一台服务

本节,我们只重点讲集群相关的配置,基本的配置中心配置本节略,如果你有兴趣可以看上篇内容

2. 配置中心集群和使用

2.1. 配置中心集群

配置中心集群主要通过将配置服务注册成服务来达到集群的目地。

配置中心工程: cloud-config-center
配置中心的其它配置见上篇文章内容,这里只介绍注册成服务的部分

  • @EnableEurekaClient:通过本注解将配置中心注册到配置中心
@SpringBootApplication
@EnableConfigServer // 激活该应用为配置文件服务器:读取远程配置文件,转换为rest接口服务
@EnableEurekaClient // 配置本应用将使用服务注册和服务发现
public class CloudGitConfigServerApplication {

    public static void main(String[] args) {
        args = new String[1];
        args[0] = "--spring.profiles.active=gitsimple2";
        SpringApplication.run(CloudGitConfigServerApplication.class, args);
    }
}

application-gitsimple2.yml:部分相关配置内容如下

  • spring.application.name:配置服务的服务名称
spring:
  application:
    name: config-config-gitsimple2

2.2. 客户端访问配置中心集群

工程名称:cloud-service
bootstrap-simple2.yml:部分相关配置内容如下

  • 注释掉’spring.cloud.config.uri’的配置,增加两个新的配置值:
    • spring.cloud.config.discovery.enabled:如果设置为true,则表示通过注册中心获取配置服务中心地址
    • spring.cloud.config.discovery.service-id:配置中心的服务注册名称,即配置中心工程cloud-config-center的application.yml中spring.application.name的值
spring:
  cloud:
    # 配置服务器的地址
    config:
      # uri: http://127.0.0.1:10888
      # 通过注册服务
      discovery:
        enabled: true
        service-id: config-config-gitsimple2
      # 要读取配置文件读取的值
      name: cloud-config
      # 如果不设置此值,则系统设置此值为 spring.profiles.active
      profile: dev

2.3. 测试

依次启动工程:
cloud-registration-center、 cloud-config-center、cloud-service

查看当前的注册到配置中的信息
http://127.0.0.1:10761/
这里写图片描述

访问url: http://127.0.0.1:10082/simple,返回内容:

{"age":112,"name":"git2-default-dev","randomNum":73}

说明我们的配置已经生效了

4. 代码

以上的详细的代码见下面
github代码,请使用tag v0.3,不要使用master

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值