springcloud是一个基于springboot实现的微服务架构开发工具。它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、分布式会话和集群状态管理等操作提供了一种简单的开发方式。
springcloud是一个拥有多个子项目的大型综合项目,可以说是微服务架构解决方案的综合套件,各个子项目也都独立进行着内容更新和迭代,因此springcloud的版本都会包含不同版本的子项目,为避免springcloud的版本与子项目版本号混淆,使用了命名的方式,这些名称是伦敦地铁站的名字。
springcloud包含了很多个子项目
-
springcloud config:配置管理工具
-
springcloud netflix:核心组件有很多,重点关注netflix下是组件,包括
- Eureka: 服务治理组件,服务注册中心
- Hystrix: 容错管理组件,实现断路器模式
- Ribbon: 客户端负载均衡的服务调用组件
- Feign: 基于Ribbon和Hystrix的声明式服务调用组件
- Zuul:网关组件,提供智能路由、访问过滤等功能。
-
springcloud Consul: 服务发现与配置管理工具
-
springcloud Security:基于spring security的安全工具包,为你的应用程序添加安全控制。
-
Turbine是聚合服务器发送事件流数据的一个工具,用来监控集群下hystrix的metrics情况。