Spring Cloud Alibaba 于 2018年7月27日 在 Spring Cloud 孵化器仓库提交第一次代码,到 2019年8月1日 在 Alibaba 仓库发布第一个毕业版本,到现在已经一年左右了
Spring Cloud Alibaba不是一个简单的组件,而是一个综合套件。其中涵盖了非常多的内容,包括:**服务治理、配置管理、限流降级以及对阿里开源生态(Dubbo、RocketMQ等)**支持的诸多组件。
再次,对于中国用户来说,Spring Cloud Alibaba还有一个非常特殊的意义:它将曾经红极一时的Dubbo,以及阿里巴巴的强力消息中间件RocketMQ融入Spring Cloud体系。
一年时间,Spring Cloud Alibaba 完成了从 Spring Cloud 最默默无闻的项目到 Spring Cloud 最火项目的蜕变
但是还是有很多人不了解,有些人想了解但是没有学习法门,那我想没有人能比阿里的架构师更强了解Spring Cloud Alibaba,这位阿里P8朋友也是希望自己这段时间的心血能帮助到更多的程序员朋友
每个章节都有小目录,因为篇幅原因不能给大家全部展开看
第一章 微服务介绍
随着互联网的发展,网站应用的规模也在不断的扩大,进而导致系统架构也在不断的进行变化。从互联网早起到现在,系统架构大体经历了下面几个过程: 单体应用架构>垂直应用架构>分布式架构>SOA架构>微服务架构。我们就先来了解一下每种系统架构是什么样子的, 以及各有什么优缺点。
第二章 微服务环境搭建
本次是使用的电商项目中的商品、订单、用户为案例进行讲解。
第三章 Nacos Discovery--服务治理
先来思考一个问题
通过上一章的操作,我们已经可以实现微服务之间的调用。但是我们把服务提供者的网络地址(ip,端口)等硬编码到了代码中,这种做法存在许多问题:
-
一旦服务提供者地址变化,就需要手工修改代码
-
一旦是多个服务提供者,无法实现负载均衡功能
-
一旦服务变得越来越多,人工维护调用关系困难
那么应该怎么解决呢, 这时候就需要通过注册中心动态的实现服务治理。
第四章 Sentinel--服务容错
-
高并发带来的问题
-
服务雪崩效应
-
常见容器方案
-
Sentinel入门
-
Sentinel的概含和功能
-
Sentine|规则
-
@SentinelResource的使用
-
Sentine规则持久化
-
Feign整台Sentinel
第五章 Gateway--服务网关
-
网关简介
-
Gateway简介
-
Gateway快速入门
-
Gateway核心架构
-
断言
-
过滤器
-
网关限流
第六章 Sleuth--链路追踪
在大型系统的微服务化构建中,一个系统被拆分成了许多模块。这些模块负责不同的功能,组合成系统,最终可以提供丰富的功能。在这种架构中,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心,也就意味着这种架构形式也会存在一些问题:
-
如何快速发现问题?
-
如何判断故障影响范围?
-
如何梳理服务依赖以及依赖的合理性?
-
如何分析链路性能问题以及实时容量规划?
第七章 Rocketmq--消息驱动
-
MQ简介
-
RocketMQ入门
-
消息发送和接收演示
-
案例
-
发送不同类型的消息
-
消息消费要注意的细节
第八章 SMS--短信服务
短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力。
-
产品优势:覆盖全面、高并发处理、消息堆积处理、开发管理简单、智能监控调度
-
产品功能:短信通知、短信验证码、推广短信、异步通知、数据统计
-
应用场景:短信验证码、系统信息推送、推广短信等
第九章 Nacos Confifig--服务配置
配置中心的思路是:
-
首先把项目中各种配置全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。
-
当各个服务需要获取配置的时候,就来配置中心的接口拉取自己的配置。
-
当配置中心中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。
第十章 Seata--分布式事务
事务指的就是一个操作单元,在这个操作单元中的所有操作最终要保持一致的行为,要么所有操作都成功,要么所有的操作都被撤销。简单地说,事务提供一种“要么什么都不做,要么做全套”机制。