Spring Config Server多实例集群部署(二):

当服务实例很多时,所有的服务实例都要同时从配置中心Config Server读取,这时候考虑在配置中心ConfigServer做一个微服务,并且将其集群化,从而达到高可用:
一,构建Eureka Server(集群,包含多个 config server)
1.新建一个eureka-server工程,eureka-server工程的pom文件继承了主maven的pom文件,eureka-server工程的pom文件引入Eureka Server的起步依赖spring-cloud-starter-eureka-server和web功能的起步依赖spring-boot-starter-web:

 <parent>
   <groupid>com.chao</groupid>
   <artifactid>chapter10</artifactid>
   <version>1.0-SHAPSHOT<version>
  </parent>
  <dependencies>
   <dependency>
     <groupid>org.springframework.cloud</groupid>
   <artifactid>spring-cloud-starter-eureka-server</artifactid>
   </dependency>
   <dependency>
     <groupid>org.springframework.boot</groupid>
   <artifactid>spring-cloud-starter-web</artifactid>
   </dependency>
  </dependencies>

2.在工程配置文件application.yml中做程序的相关配置,指定程序的端口号为8761,并不自注册(即将配置register-with-eureka和fetch-registry设置为false)

server:
 port:8761
 eureka:
  client:
  register-with-erurka:false
  fetch-registry:false
  serviceUrl:
   defaultZone:http://localhost:${server.port}/eureka/

3.在程序的启动类EurekaServerApplication上加@EnableEurekaServer注解,开启EurekaServer的功能,

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication{
public static void main( String[] args ){
    	SpringApplication.run( EurekaServerApplication.class, args);
 }
}

二.改造Config Server
1.在pom文件中引入起步依赖spring-cloud-starter-eureka-server

<dependency>
         <groupid>org.springframework.cloud</groupid>
       <artifactid>spring-cloud-starter-eureka</artifactid>
 </dependency>

2.application.yml加入配置:

eureka:
client:
serviceUrl:
defaultZone:http//localhost:8761/eureka/

3.启动类加注解:

 @SpringBootApplication
    @EnableConfigServer
    @EnableEurekaServer
    public class ConfigServerApplication{
    public static void main( String[] args ){
        	SpringApplication.run( ConfigServerApplication, args);
     }
    }

三.改造Config Client
1.在pom文件中引入起步依赖spring-cloud-starter-eureka-client
2.启动类加注解 @EnableEurekaClient:
3.在application.yml上加上配置,指定的服务注册中心地址:

 spring:
     application:
      name:config-client
      cloud:config:
      fail-fast:true
      discovery:
       enabled:true
       serviceId:config-server
    profiles:
     active:dev
     server:
     port:8762
     eureka:client:serviceUrl:
      defultZone:http://locaost:8761/ureka(指定服务注册中心)

4.启动(先启动服务端在启动客户端):
依次启动eureka-server,config-server,和config-client工程,注意这里需要config-server启动成功,并且向eurka-server注册完成后,才能启动config-client.
多次启动config-client工程,从控制台可以发现他会轮流从http://locaost:8768和http://locaost:8769 读取配置文件,并且做了负载均衡。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值