Spring Cloud是什么?
简单来说Spring Cloud是一系列框架的组成集合。主要利用的我们现在主流应用的Spring Boot框架开发便利性、巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以利用Spring Boot的开发风格做到一键启动和部署。Spring Cloud没有重复制造轮子,将比较成熟、经得起实际考验的服务框架进行组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
Spring Cloud主要组成部分有哪些?
SpringCloud的子项目,大致可分成两类,一类是对现有成熟框架SpringBoot的封装和抽象,
第二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka, ActiveMQ这样的角色。对于我们想快速实践微服务的开发者来说,第一类子项目就已经足够使用,如:
Spring Cloud Netflix:是对Netflix开发的一套分布式服务框架的封装、包括服务的发现和注册,负载均衡、REST客户端、断路器、请求路由等。
Spring Cloud Config:将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件
Spring Cloud Stream:分布式消息队列,是对Kafka, MQ的封装
Spring Cloud Security:对Spring Security的封装,并能配合Netflix使用
Spring Cloud Zookeeper:对Zookeeper的封装,使之能配置其它Spring Cloud的子项目使用
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分、它基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能。
使用SpringClou的优劣势有哪些?
主要优势有:Spring Cloud来源于 Spring、质量、稳定性、持续性都可以得到保证。
项目的整体耦合度比较低、每一个都是单独的模块、不会影响其他功能业务模块的开发。
目前Spring Cloud的配置也比较简单、都是基于注解就能实现
每个服务都有对应的独立数据库以及公共的数据库等
服务可以进行动态扩容、当数据或访问量大的时候
微服务其实是一把双刃剑、有优势就会有劣势
主要的针对分布式部署以及调用的时候、每个模块都是单独部署运行的、在每个模块进行访问的时候都是使用轻量级的REST API接口的形式进行访问、访问的过程中会出现一些问题、比如网络问题、容错问题、跨域、调用关系等。
由于数据库是独立的、会面临分库分表、分布式事务的管理、对于事务的一致性必须要有解决方法
还有一个就是运维成本和部署测试的成本都会增加、工作量比较大
SpringCloud章节学习路线
- 微服务是什么?它的优缺点有哪些?
- Spring Cloud是什么?Spring Cloud版本介绍
- Spring Cloud和Dubbo的区别及各自的优缺点
- Spring Cloud开发环境的准备和Lombok安装步骤
- Spring Boot简介
- Spring Boot项目搭建步骤
- Spring Boot Starter的介绍及使用
- Spring Cloud Eureka是什么?
- SpringCloud组件:搭建Eureka服务注册中心
- 使用Eureka编写服务提供者
- 使用Eureka编写服务消费者
- Eureka注册中心开启密码认证
- Spring Cloud使用Eureka集群搭建实现高可用服务注册中心
- Eureka自我保护模式和InstanceID的配置
- Eureka开发时快速移除失效服务
- Eureka的REST API及API扩展
- Spring Cloud Ribbon介绍及使用
- Spring Cloud Ribbon结合RestTemplate实现负载均衡
- Spring Cloud Ribbon负载均衡策略介绍
- Spring Cloud Ribbon自定义负载均衡策略
- Spring Cloud Ribbon配置详解
- Spring Cloud使用Feign调用服务接口
- Spring Cloud Feign的自定义配置及使用
- Spring Cloud Hystrix介绍及使用
- Spring Cloud Hystrix资源隔离策略
- Spring Cloud Hystrix缓存与合并请求
- Spring Cloud使用Hystrix实现容错处理
- Spring Cloud Feign整合Hystrix实现容错处理
- Spring Cloud Hystrix的实时监控功能
- Spring Cloud使用Hystrix Dashboard查看监控数据
- Spring Cloud使用Turbine实现集群监控
- Spring Cloud Zuul网关的介绍及使用
- Spring Cloud Zuul路由配置详解
- Spring Cloud Zuul过滤器介绍及使用
- Spring Cloud使用Zuul实现容错回退功能
- 查看Zuul的路由端点和过滤器信息
- Spring Cloud Zuul请求响应信息输出
- Spring Cloud实现Zuul自带的Debug功能
- Spring Cloud Gateway核心概念和工作原理
- Spring Cloud Gateway整合Eureka路由转发
- Spring Cloud Gateway的常用路由断言工厂
- Spring Cloud Gateway过滤器工厂的使用
- Spring Cloud Gateway全局过滤器
- Spring Cloud Gateway实战(限流、熔断回退、跨域、统一异常处
- Smconf(分布式配置管理框架)概述
- Apollo(分布式配置中心)核心概念及核心功能介绍
- Apollo本地部署详细步骤
- Apollo Portal管理后台的使用
- Apollo在Java中的使用
- Apollo架构设计介绍
- Apollo服务端设计原理
- Apollo客户端设计原理
- Apollo高可用设计分析
- Spring Cloud使用Sleuth在应用中进行日志跟踪
- Spring Cloud Sleuth与ELK配合使用
- Spring Cloud整合Zipkin进行服务跟踪
- JWT是什么?
- Spring Cloud基于JWT创建统一的认证服务
- 服务提供方进行调用认证
- 服务消费方申请Token
- Feign调用前统一申请Token传递到调用的服务中
- RestTemplate调用前统一申请Token传递到调用的服务中
- Zuul中传递Token到路由的服务中
- Spring Boot Admin的介绍及使用
- 使用Spring Security给Spring Boot Admin开启认证
- Spring Boot Admin集成Eureka项目搭建
- Spring Boot Admin监控告警服务
- Swagger是什么?Swagger怎么用?
- Swagger常用注解使用详解
- Spring Cloud Eureka控制台快速查看Swagger文档
- 使用Zuul聚合多个微服务的Swagger文档
- 微服务架构下如何获取用户信息并认证?
- Spring Cloud服务限流详解
- 服务降级是什么?Spring Cloud如何实现?
- 灰度发布的原理及实现
- Guava Cache本地缓存介绍及使用
- Spring Cloud集成Spring Data Redis
- 防止缓存穿透方案
- 防止缓存雪崩方案
最近项目需要使用Springcloud来做、刚好用到这块、目前只把章节列出来了、后续会陆续慢慢更新章节具体内容、大家一起学习进步、同时博主也再巩固下这块知识、路过的点赞收藏不过分吧
版权归原作者 java李杨勇 所有, 如有侵权,请联系我们删除。