eureka

本文介绍Eureka服务注册与发现机制,包括服务提供者的注册流程、服务发现者的注册表更新、心跳机制及自我保护模式。对比Eureka与Zookeeper的区别,并详细说明Eureka服务器的搭建步骤。

1.注册
服务提供者启动时,向eureka一次次反复注册,直到注册成功为止
2.拉取注册表
服务发现者每30秒拉取一次注册表(刷新注册表)
3.心跳
服务提供者每30秒发送一次心跳数据
eureka连续3次收不到一个服务的心跳,会删除这个服务
4.自我保护模式
特殊情况
如果由于网络不稳定或中断,15分钟内,85%以上服务器出现心跳异常,就会自动进入保护模式。
在保护模式下,所有服务都不删除。
网络恢复后,可以自动退出保护模式,恢复正常
开发期间很容易达到保护模式的条件,会影响测试,在开发期间可以关闭保护模式

eureka 和 zookeeper 区别:
eureka:
强调AP(可用性)
集群结构:对等结构
zookeeper:
强调CP(一致性)
集群结构:主从结构

搭建eureka服务器
1.新建 springboot 项目
2.添加 eureka server 依赖
3.yml配置
1.主机名
2.禁用保护模式
3.针对单台服务器,配置不向自己注册,也不从自己拉取注册表
4启动类注解 @EnableEurenaServer,通过注解触发自动配置
添加依赖(Edit Starters添加)

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>
                spring-cloud-starter-netflix-eureka-client
            </artifactId>
        </dependency>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR9</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
	单台主机
spring:
  application:
    name: eureka-server
server:
  port: 2001  # 默认8761

eureka:
  instance:
    hostname: eureka1 # 主机名,集群中区分不同服务器
  server:
    enable-self-preservation: false # 开发期间禁用保护模式
  client:
    register-with-eureka: false # 单台服务器不向自己注册
    fetch-registry: false # 单台服务器不从自己拉取
	构建eureka服务集群
eureka:
  instance:
    hostname: eureka2 # 主机名,集群中区分不同服务器
  client:
    register-with-eureka: true
    fetch-registry: true

    # 2要连接1
    service-url:
      defaultZone: http://eureka1:2001/eureka
# 获取地址表,要从注册表获取配置中心的地址
eureka:
  client:
    service-url:
      defaultZone: http://eureka1:2001/eureka,http://eureka2:2002/eureka

单台 eureka 服务器启动后报错: Connect to localhost:8761 timed out
这是自动配置的一个默认集群服务器,但是这个默认服务器不存在,所以出错。后面自己搭建了集群服务,默认服务器就不会再自动配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值