史上最全的Spring Cloud学习笔记!(超4W字)

在传统的软件架构中,我们通常采用的是单体应用来构建一个系统,一个单体应用糅合了各种业务模块。起初在业务规模不是很大的情况下,对于单体应用的开发维护也相对容易。但随着企业的发展,业务规模与日递增,单体应用变得愈发臃肿。由于单体应用将各种业务模块聚合在一起,并且部署在一个进程内,所以通常我们对其中一个业务模块的修改也必须将整个应用重新打包上线。为了解决单体应用变得庞大脯肿之后产生的难以维护的问题,微服务架构便出现在了大家的视线里。

Spring Cloud 是一个基于 Spring Boot 实现的微服务框架,它包含了实现微服务架构所需的各种组件。

注:Spring Boot 简单理解就是简化 Spring 项目的搭建、配置、组合的框架。因为与构建微服务本身没有直接关系,所以本文不对 Spring Boot 进行展开。另外本文有一些例子涉及到 Spring 和 Spring Boot,建议先了解一下 Spring 和 Spring Boot 再阅读本文。本文的阅读对象主要是没有接触过服务架构,想对其有一个宏观的了解的同学。

Spring Cloud作为当下主流的微服务框架,可以让我们更简单快捷地实现微服务架构。

Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

我和几位同事一起整理了这份Spring Cloud教程,经过了多次修改和完善,希望可以对你有所帮助!如果帮助到你或者对你有所启发的话希望可以双击点赞哈!有需要这份学习笔记的也可以在评论区领取。

给大家展示一下这份教程的目录:

1、初识Spring Cloud与微服务

什么是微服务

什么是Spring Cloud

微服务 (Microservices) 是一种软件架构风格,起源于Peter Rodgers博士于 2005 年度云端运算博览会提出的微 Web 服务 (Micro-Web-Service) 。微服务主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作。

2. Spring Cloud Eureka服务治理

搭建Eureka-Server服务注册中心

搭建Eureka-Client服务提供者

Eureka-Server集群

搭建Server-Consumer服务消费者

Eureka-Server添加认证

Eureka配置

3. Spring Cloud Ribbon客户端负载均衡

Ribbon简介

RestTemplate详解

发送Get请求

发送POST请求

发送PUT请求

发送DELETE请求

RestTemplates实战

Spring Cloud Ribbon配置

4. Spring Cloud Hystrix服务容错

使用Hystrix

@HystrixCommand详解

服务降级

异常处理

命名与分组

Hystrix缓存

请求合并

Hystrix属性

Commond

collapser

threadPool

5. Spring Cloud Hystrix Dashboard仪表盘

监控单个Hystrix实例

Turbine集群监控

使用消息中间件

6. Spring Cloud Feign 声明式服务调用

搭建Feign Consumer

Ribbon相关配置

Hystrix相关配置

其余Feign配置

请求压缩

日志配置

7. Spring Cloud Zuul服务网关

Spring Cloud Zuul入门

路由配置

传统配置

基于服务名称配置

默认路由配置规则

优先级

前缀配置

本地跳转

头部过滤 & 重定向

过滤器

核心过滤器

自定义Zuul过滤器

8. Spring Cloud Config统一配置管理

搭建Config-Server

搭建Config-Client

Config-Server额外配置

占位符的使用

子目录支持

clone-on-start

整合Spring Security

加密解密

Config-Client额外配置

刷新配置

集群配置

9. 使用Spring Cloud Bus刷新配置

引入Spring Cloud Bus

WebHooks

10. 使用Spring Cloud Sleuth跟踪微服务

准备工作

创建Server-Provider1

创建Server-Provider2

测试Spring Cloud Sleuth

集成Zipkin

搭建Zipkin-Server

微服务引入Zipkin

测试

数据存储

Zipkin API

11. Spring Cloud Consul服务治理

安装Consul

Server-Provider

Server-Consumer

consul集群

12. Spring Cloud Alibaba Nacos注册中心

Nacos安装

框架搭建

Nacos作为注册中心

测试负载均衡

Nacos注册中心配置

Nacos是一款集服务注册发现、服务配置和管理于一身的开源软件,这节主要记录Nacos的服务注册发现功能的使用。借助Spring Cloud Alibaba Nacos Discovery,我们可以轻松地使用Spring Cloud编程模型体验Nacos的服务注册发现功能。本节使用的Spring Cloud版本为Hoxton.SR3,Spring Cloud Alibaba版本为2.2.0.RELEASE,Spring Boot版本为2.2.3.RELEASE。

13. Spring Cloud Alibaba Nacos配置中心

框架搭建

基本使用

获取配置规则

配置划分实战

配置回滚

获取多个配置

多配置共享

常用配置

14.Spring Cloud Alibaba Sentinel控制台详解

安装控制台

搭建客户端

流控规则

QPS直接失败

线程数直接失败

关联

链路

预热Warm Up

排队等待

降级规则

RT

异常比例

异常数

热点规则

系统规则

授权规则

15. Spring Cloud Alibaba Sentinel@SentinelResource

框架搭建

基本用法

其他属性

如果帮助到你或者对你有所启发的话希望可以双击点赞哈!有需要这份学习笔记的也可以在评论区领取。

你可能感兴趣的:(史上最全的Spring Cloud学习笔记!(超4W字))