1、宏观了解
2、微服务功能
3、 常用组件
简单的SpringCloud架构的微服务系统
SpringCloudConfig:服务配置中心,将所有的服务的配置文件放到本地仓库或者远程仓库,配置中心负责读取仓库的配置文件,其他服务向配置中心读取配置。SpringCloudConfig使得服务的配置统一管理,并可以在不人为重启服务的情况下进行配置
文件的刷新。
SpringCloudNetflix:它是通过包装了Netflix公司的微服务组件实现的,也是SpringCloud核心的核心组件,包括Eureka、Hystrix、Zuul、Archaius等。
Eureka:服务注册和发现组件。
Hystrix:熔断器组件。Hystrix通过控制服务的API接口的熔断来转移故障,防止微服务系统发生雪崩效应。另外,Hystrix能够起到服务限流和服务降级的作用。使用HystrixDashboard组件监控单个服务的熔断器的状态,使用Turbine组件可以聚合多
个服务的熔断器的状态。
Zuul:智能路由网关组件。NetflixZuul能够起到智能路由和请求过滤的作用,是服务接口统一暴露的关键模块,也是安全验证、权限控制的一道门。
Feign:声明式远程调度组件。
Ribbon:负载均衡组件。
Archaius:配置管理API的组件,一个基于Java的配置管理库,主要用于多配置的动态获取。
SpringCloudBus:消息总线组件,常和SpringCloudConfig配合使用,用于动态刷新服务的配置。
SpringCloudSleuth:服务链路追踪组件,封装了Dapper、Zipkin,Kibina等组件,可以实时监控服务的链路调用情况。
SpringCloudDataFlow:大数据操作组件,SpringCloudDataFlow是SpringXD的替代品,也是一个混合计算的模型,可以通过命令行的方式操作数据流。
SpringCloudSecurity:安全模块组件,是对SpringSecurity的封装,通常配合0Auth2使用来保护微服务系统的安全。
SpringCloudConsul:该组件是SpringCloud对Consul的封装,和Eureka类似,它是另一个服务注册和发现组件。
SpringCloudZookeeper:该组件是SpringCloud对Zookeeper的封装,和Eureka、Consul类似,用于服务的注册和发现。
SpringCloudStream:数据流操作组件,可以封装Redis、RabbitMQ、Kafka等组件,实现发送和接收消息等。
SpringCloudCLI:该组件是SpringCloud对SpringBootCLI的封装,可以让用户以命令行方式快速运行和搭建容器。
SpringCloudTask:该组件基于SpringTask,提供了任务调度和任务管理的功能。
SpringCloudConnectors:用于Paas云平台连接到后端。