什么是springcloud?
Springcloud
是一个微服务框架,相比dubbo
等,springcloud
提供全套的分布式系统解决方案。
Eureka是什么?
Eureka
是netflix
的一个子模块,也是核心模块之一,基于rest
的服务,用于定位服务,以实现云端中间层服务发现和故障转移 。
包含2个组件:eureka server
和 eureka client
springcloud
为微服务架构开发涉及的 配置管理、服务治理、熔断机制、智能路由、微代理、控制总线、一次性token、全局一致性锁、leader选举、分布式session、集群状态管理 等操作提供了一种简单的开发方式
springcloud是顶级项目
springcloud的子项目:
-
springcloud config
:配置管理工具,支持使用git存储配置内容,支持应用配置的外部化存储,支持客户端配置信息刷新,加解密配置内容等 -
springcloud bus
:事件、消息总线、用于在集群(例如,配置变化事件)中传播状态变化,可以与springcloud config联合实现热部署 -
springcloud netflix
:针对多种netflix组件提供的开发工具包,其中包括eureka、hystrix、zuul、archaius等 -
netflix-eureka
:一个基于rest服务的服务治理组件,包括服务注册中心,服务注册与服务发现机制的实现,实现了云端负载均衡和中间层服务器的故障转移 -
netflix-hystrix
:容错管理工具,实现断路器模式,通过控制服务的节点,从而对延迟和故障提供更强大的容错能力 -
netflix-ribbon
:客户端负载均衡的服务调用组件 -
netflix-feign
:基于ribbon和hystrix的声明式服务调用组件 -
netflix-zuul
:微服务网关,提供动态路由,访问过滤等服务 -
netflix-archaius
:配置管理API,包含一系列配置管理API,提供动态类型化属性、线程安全配置操作、轮询框架、回调机制等功能