阿里巴巴内网开源的SpringCloudAlibaba笔记,把微服务玩的出神入化

news/2024/7/10 21:01:40 标签: 微服务, 开源, 笔记

SpringCloud Alibaba 为什么会出现?

Spring Cloud Netflix 项目进入维护模式,Spring Cloud Netflix 将不再开发新的组件,我们知道 Spring Cloud 版本迭代算是比较快的,因而出现了很多中岛的 ISSUE 都来不及 Fix 就又推另一个 Release 了 。进入维护模式意思就是目前已知以后一段时间 Spring Cloud Netflix 提供的服务和功能就这么多了, 不再开发性的组件和功能了。 以后将以维护和 Merge 分支 Full Requset 为主。换句话说:就是 SpringCloud 的技术栈不再完整了!此时,我们就有必要寻找一个新的完整的技术栈。

SpringCloud Alibaba 什么是?

Spring-Cloud-Alibaba 项目由阿里巴巴的开源组件和多个阿里云产品组成,旨在实现和公开众所周知的 Spring 框架模式和抽象,为使用阿里巴巴产品的 Java 开发者带来 Spring-Boot 和 Spring-Cloud 的好处。

SpringCloud Alibaba 能干什么?

  • 服务限流降级:默认支持 Servlet、Feign\

    RestTemplate、Dubbo、和 RocketMQ 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级骨子额,还支持查看限流降级 Metrics 控制。
  • 服务注册于发现:适配 Spring Cloud 服务注册于发现标准,默认集成 Ribbon 支持
  • 分布式配置管理:支持分布式系统中的外部话配置,配置更改时自动刷新。
  • 消息驱动能力:基于 Spring Cloud Stream 为微服务应用构建消息驱动能力。
  • 阿里云对象存储:阿里云提供的海量、安全、低成本、高可靠的云存储服务。支持在任何应用,任何时间、任何低调存储和访问任意类型的数据。
  • 分布式任务调度:提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。同时提供分布式的任务执行模型,如网格任务,网格任务支持海量任务均匀分配到所有 Worker (schedulerx-client) 执行。

为什么要学习 SpringCloud Alibaba

Spring Cloud Alibaba 为分布式应用开发提供了一站式解决方案。它包含开发分布式应用程序所需的所有组件,可以轻松地使用 Spring Cloud 开发应用程序。

使用 Spring Cloud Alibaba,只需添加一些注解和少量配置,即可将 Spring Cloud 应用连接到 Alibaba 的分布式解决方案中,并使用 Alibaba 中间件构建分布式应用系统。

正是基于这些原因,我们有必要来学习 SpringCloud Alibaba 技术。

那如何学习呢?市面上对于 SpringCloud Alibaba 讲解的资料零零碎碎,根本不成完整体系;去官网学习又无从下手,饱受打击。因此我将在这分享我精心收集整理的《SpringCloudAlibaba 学习笔记》从入门到入魂

此笔由阿里大佬编写只流传于内部,几经波折终于到手,我已看完小半部分,确实不错特意在此分享,回馈小伙伴。这份笔记究竟写了些什么?下面我们一起来看看

Spring-Cloud-Alibaba 脑图

目录:

一:微服务介绍

  • 系统架构演变
  • 微服务架构介绍
  • SpringCloudAlibaba介绍

垂直应用架构

微服务架构的常见解决方案

二:微服务环境搭建

  • 案例准备
  • 工程搭建

微服务环境搭建

三:Nacos DisCovery--服务治理

  • 服务治理介绍
  • nacos简介
  • nacos入门案例
  • 实现服务调用的负载均衡
  • 基于Feign实现服务调用

Nacos Discovery--服务治理

自定义实现负载均衡

四:Sentinel--服务容错

  • 高并发带来的问题
  • 服务雪崩效应
  • 常见的容错方案
  • Sentinel入门
  • Sentinel的概念和功能
  • Sentinel规则
  • @SentinelResource的使用
  • Sentinel规则持久化
  • Fegin整合Sentinel

服务雪崩效应

实现一个接口的限流

五: Gateway--服务网关

  • 网关简介
  • Gateway简介
  • Gateway入门案例
  • Gateway核心架构
  • Gateway断言
  • Gateway过滤器
  • 网关限流

Gateway--服务网关

全局过滤器

六: Sleuth--链路追踪

  • 链路追踪介绍
  • Sleuth入门
  • ZipKin的集成
  • Zipkin数据持久化

Sleuth--链路追踪

Zipkin的集成

七: Rocketmq--消息驱动

  • MQ简介
  • RocketMQ入门
  • 消息的发送和接收
  • 案例
  • 发送不同类型的消息
  • 消息消费要注意的细节

事务消息

Rocketmq--消息驱动

八: SMS--短信服务

  • 短信服务介绍
  • 短信服务的使用
  • 下单之后发送短信

SMS--短信服务

九: Nacos Config--服务配置

  • 服务配置中心介绍
  • Nacos Config入门
  • Nacos Config 深入
  • Nacos的几个概念

Nacos Config--服务配置

十: Seata--分布式事务

  • 分布式事务基础
  • 分布式事务解决方案
  • Seata介绍
  • Seata实现分布式事务控制

分布式事务基础

Seata实现分布式事务控制

扩展章节:Dubbo-rpc通信

  • dubbo介绍
  • dubbo实现服务调用

Dubbo-rpc通信


http://www.niftyadmin.cn/n/410562.html

相关文章

二、搭建MyBatis

二、搭建MyBatis 1、开发环境 IDE:idea 2019.2 构建工具:maven 3.5.4 MySQL版本:MySQL 5.7 MyBatis版本:MyBatis 3.5.7 2、创建maven工程 a>打包方式:jar b>引入依赖 <dependencies> <!-- Mybatis核心 --><dependency><groupId>org.m…

接口测试 —— 接口和接口文档概念

1、接口的概念 接口又叫API&#xff0c;全称application programming interface&#xff1a;应用程序接口&#xff08;规范&#xff09;&#xff0c;也就是我们经常会听说Web接口&#xff0c;APP接口。 详细说明&#xff1a; APP是一种基于C/S架构的应用程序&#xff0c;如抖音…

linux部署的几种方法

需要关注持续更新的朋友可以关注下面的链接&#xff1a; 运维相关合集地址 线下服务部署上线的几种方式 以一个java打包的jar为例 环境配置 这里是jar&#xff0c;需要jdk环境才能运行&#xff0c;如果是python程序&#xff0c;则需要python的环境&#xff0c;以此类推。 …

数据项目管理的痛点与实践

痛点一 资源不足 讨论背景&#xff1a; 任何一家公司、任何一个部门永远不可能资源充足&#xff0c;管理人员要适应资源不足的常态&#xff0c;故而针对以下问题进行了内部讨论&#xff1a; 需求太多&#xff0c;产品啥都要&#xff1f; 工期紧张&#xff0c;立flag卡时间&a…

一次有关 DNS 解析导致 APP 慢的问题探究

一、业务背景 HTTTPDNS AWS Router53 APP 使用 HTTPDNS&#xff0c; 为解决 DNS 解析生效慢&#xff0c; DNS 劫持等问题。 我们 IOS 和安卓都是使用了 HTTPDNS。 域名托管在 AWS Router53。 域名有多个解析(基于延迟)&#xff0c;为了解决就近接入。 示例配置 ai.baidu.c…

uni-app之用cover-image组件创建全屏背景图的教程

在UniApp中&#xff0c;cover-image组件可以用于创建全屏背景图&#xff0c;为应用程序添加更加吸引人的视觉效果。本教程将详细介绍如何在UniApp中使用cover-image组件&#xff0c;并提供示例代码&#xff0c;帮助您快速上手。 步骤1: 创建新的UniApp项目 首先&#xff0c;您…

【沐风老师】3DMAX径向对称插件使用方法应解

3DMAX径向对称插件使用教程 3DMAX径向对称插件&#xff0c;允许你对径向结构建模并查看最终结果。它的功能类似于3dMax自带的“对称”修改器&#xff0c;但它可以在三个轴的任意角度径向对象&#xff0c;这可以创造出很多我们意想不到的建模艺术效果&#xff0c;也可以理解它是…

docker + grafana + prometheus

前提&#xff1a;已部署docker 监控数据来源于10.8.8.8/metrics&#xff0c;接下来将在10.9.9.9 的服务上部署grafana和prometheus&#xff0c;用于展示监控数据。 安装grafana docker run -d --namegrafana -p 3000:3000 grafana/grafanadocker ps -a 安装prometheus 配置…