Eureka

Eureka是Netflix的子模块,作为服务注册与发现的工具,采用C-S架构。服务通过Eureka客户端注册到Eureka Server并维持心跳,允许其他服务通过Eureka发现并调用。与Zookeeper相比,Eureka提供了更简单的服务治理解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

是什么

  • Eureka是Netfix的子模块,也是核心模块之一。

  • Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层之间的服务发现与故障转移。
    服务注册与发现对于微服务来说是非常重要的,有了服务注册与发现,只要通过服务标识符,就可以访问到服务而不需要手动修改服务调用配置文件了。功能类似于Dubbo的注册中心,比如Zookeeper。

Eureka相当于物业公司,我们入住的时候需要去登记注册,Eureka就用来对微服务做登记注册

原理

  • Eureka采用了C-S的设计架构,Eureka作为服务注册功能的服务器,它是服务注册中心。
  • 系统中的其他微服务通过Eureka客户端,连接到Eureka Server并维持心跳连接,这样系统的维护人员可以通过Eureka Server来监控系统中各个微服务是否正常运行。SpringCloud的其他模块,(如Zuul)就可以通过Eureka Server来发现系统中的微服务,并执行相关逻辑。
  • 工作过程举例:
    • consumer和provider两个微服务通过Eureka客户端注册到Eureka Server
    • consumer就可以通过Eureka找到provider服务,执行并调用provider的业务逻辑。
  • Eureka包含两个组件,Eureka Server和Eureka Client
    • Eureka Server提供服务注册服务,各个节点(微服务)启动后会在Eureka Server中进行注册,这样Eureka Server的注册表中将会保存所有可用服务节点的信息,服务节点信息可以在界面中直观的看到。
    • Eureka Client是一个Java客户端,用于简化Eureka Server的交互,客户端同时具备一个内置的、使用轮询负载算法(http://developer.51cto.com/art/201908/602135.htm)的负载均衡器,在应用启动后会向Eureka Server发送默认心跳(周期为30秒),如果Eureka Server在多个默认心跳周期内没有接收到节点心跳,那么Eureka Server会将该服务节点从注册表中移除(默认为90秒)。

Eureka和Zookeeper

在我的另一篇博文有详细总结:https://blog.youkuaiyun.com/sinat_38719275/article/details/102984281

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值