美文网首页
Spring Cloud Eureka简介及与Zookeeper

Spring Cloud Eureka简介及与Zookeeper

作者: 国_东 | 来源:发表于2018-02-20 11:53 被阅读0次
简单介绍 Spring Cloud

Spring Cloud 是一个基于Spring Boot实现的微服务开发工具。到目前为止我运用到生产中的常用的组件如下。

  • Spring Cloud Eureka :服务治理组件,包含服务注册中心,服务注册与发现机制
  • Spring Cloud Hystrix:容错管理组件,具备服务熔断、服务降级、线程和信号隔离、请求缓存、请求合并以及服务监控等强大功能
  • Spring Cloud Ribbon:客户端负载均衡,重试机制
  • Spring Cloud Feign:声名式服务调用,对Ribbon和Hystrix的封装
  • Spring Cloud Stream:简化对中间件的使用,支持RabbitMQ和Kafka自动化配置
  • Spring Cloud Sleuth:全链路跟踪,与Zipkin整合
Spring Cloud Eureka

与Dubbo的服务治理做比较和分析,如图

eureka服务治理机制 Dubbo服务治理机制
Eureka服务治理机制
  • 服务注册中心:服务端,提供注册与发现功能。
    • 失效剔除时间间隔默认60s(eviction-interval-timer-in-ms=60 * 1000)
    • 自我保护
      • renew 15分钟之内低于85%,不过期,不剔除
      • 需要客户端负载均衡,重试等
  • 服务提供者:
    • 注册
    • 续约(续约间隔时间默认30s,失效时间默认90s)
      • eureka.instance.lease-renewal-interval-in-seconds=30
      • eureka.instance.lease-expiration-duration-in-seconds=90
    • 取消租约(下线):重启或关闭
  • 服务消费者
    • 获取服务列表(registryFetchIntervalSeconds默认30s)
Eureka服务治理机制与Dubbo服务治理机制的比较
Feature Eureka Zookeeper
服务健康检查 可配支持 (弱)长连接,keepalive
CAP AP CP
watch支持(客户端观察到服务提供者变化) 支持 long polling/大部分增量 支持
自我保护 支持 -
客户端缓存 支持 -
自身集群的监控 metrics -
  • Eureka支持健康检查,自我保护等
  • Zookeeper为CP设计,Eureka为AP设计。作为服务发现产品,可用性优先级较高,一致性的特点并不重要,宁可返回错误的数据,也比不反回结果要好得多。
  • 服务列表变更Zookeeper服务端会有通知,Eureka则通过长轮询来实现,Eureka未来会实现watch机制

本文部分参考文章

相关文章

网友评论

      本文标题:Spring Cloud Eureka简介及与Zookeeper

      本文链接:https://www.haomeiwen.com/subject/tzwctftx.html