Eureka高可用集群

为什么要搭建高可用集群?

在实际开发中 随着业务的复杂程度 服务也会越来越多  一个项目可能有几十或者几百个实例

这些实例都交给Eureka注册中心进行管理 此时Eureka承受了非常高的负载 由于注册中心在

微服务架构中非常重要 所以要对注册中心进行高可用集群 一旦其中一个注册中心挂掉以后

其它的注册中心还能继续管理服务

搭建Eureka高可用集群

修改Host文件

C:\Windows\System32\drivers\etc

127.0.0.1 eureka01 eureka02

新建一个项目

导入依赖

  <parent>
    <groupId>com.czy</groupId>
    <artifactId>springcloud_one</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-eureka-server</artifactId>
    </dependency>
  </dependencies>

添加配置文件 

server:
  port: 8001
eureka:
  instance:
    hostname: eureka01
  client:
    service-url: 
      defaultZone:
        http://eureka02:8002/eureka/
spring:
  application:
    name: eureka

添加启动类

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

再新建一个项目

 依赖和启动类跟eureka_server01一样

 配置文件如下

server:
  port: 8002
eureka:
  instance:
    hostname: eureka02
  client:
    service-url: 
      defaultZone:
        http://eureka01:8001/eureka/


spring:
  application:
    name: eureka

启动2个服务 输入localhost:8001 可以看到EUREKA实例上有2个服务 8001 和 8002

 启动客户端(如果没有客户端 点下面)

https://www.cnblogs.com/chenziyue/p/12482345.html 

分别打开8001 和 8002 可以看到2个注册中心都持有EUREKA_CLIENT的实例 说明8001和8002注册中心是同步

 

 关闭8001注册中心后 打开8002 可以看到 即使8001挂掉后 8002依旧持有EUREKA-CLIENT实例 还是可以被其它服务调用

猜你喜欢

转载自www.cnblogs.com/chenziyue/p/12482609.html