Spring Cloud Alibaba
Spring Cloud Alibaba致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。
每天都要进步一点点
工作日常技术学习、积累、总结
展开
-
Spring Cloud Alibaba Seata工作原理
一、简介前面一篇文章我们介绍了如何利用Seata组件实现分布式系统中的分布式事务问题,保证了数据一致性。虽然说seata使用起来很简单,只需要一个简单的注解@GlobalTransactional就好了,但是我们还是需要稍微了解一下其工作原理,毕竟面试如果问到,跟面试官聊聊原理还是一个加分项。下面我们就来了解一下Seata的工作原理是怎么样的。二、Seata工作原理我们再来看一下Seata的工作流程图:涉及三个角色:TC (Transaction Coordinator) - .原创 2020-09-13 20:21:32 · 2310 阅读 · 5 评论 -
Spring Cloud Alibaba Seata处理分布式事务及案例实战
一、分布式事务的由来单体应用被拆分成微服务应用,原来的三个模块被拆分为三个独立的引用分别使用三个独立的数据源,业务操作需要调用三个服务来完成。此时每个服务内部的数据一致性由本地事务来保证,但是全局的数据一致性问题没法保证。一句话:一次业务操作需要跨多个数据源或者需要跨多个系统进行远程调用,就会产生分布式事务问题。二、Seata简介Seata是什么?Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。Seata官网地址?h..原创 2020-09-13 09:59:00 · 2508 阅读 · 4 评论 -
Spring Cloud Alibaba Sentinel之持久化篇
一、简介Sentinel Dashboard中添加的规则是存储在内存中的,只要服务重启流控规则就丢失了,一旦我们重启应用,sentinel规则将消失,生产环境需要将配置规则进行持久化。下面我们就来看看如何持久化sentinel流控规则。原创 2020-09-07 20:42:41 · 1164 阅读 · 2 评论 -
Spring Cloud Alibaba Sentinel之服务熔断篇
一、简介前面一篇文章我们介绍了如何使用@SentinelResource定义一个资源并且如何配置降级规则等,我们都知道,微服务之间的调用要么采用ribbon借助RestTemplate进行调用,要么是通过OpenFeign声明式服务调用,涉及到跨服务调用,难免会出现网络故障,此时如果我们的接口报错,直接将报错信息展示到前端,客户看到很不友好。Sentinel提供了丰富的熔断之后的降级处理方法,本篇文章将Sentinel与Ribbon负载均衡、Sentinel与OpenFeign进行整合,分别介绍如何配置处原创 2020-09-07 17:44:27 · 1129 阅读 · 1 评论 -
Spring Cloud Alibaba @SentinelResource配置详解
一、简介在前面的章节中,我们已经使用过@SentinelResource注解,本篇文章我们将如何使用@SentinelResource注解灵活的定义控制资源以及如何配置控制策略。在定义了资源点之后,我们就可以通过Dashboard来设置限流和降级策略来对资源点进行保护了。同时,也可以通过@SentinelResource来指定出现限流和降级时候的异常处理策略。下面,就来一起看看限流和降级都是如何实现的。原创 2020-09-07 15:52:22 · 1041 阅读 · 0 评论 -
Spring Cloud Alibaba Sentinel之热点参数限流篇
一、简介何为热点?热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如:商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制热点参数限流会统计传入参数中的热点参数,并根据配置的限流阈值与模式,对包含热点参数的资源调用进行限流。热点参数限流可以看做是一种特殊的流量控制,仅对包含热点参数的资源调用生效。原创 2020-09-06 09:52:43 · 1913 阅读 · 2 评论 -
Spring Cloud Alibaba Sentinel之服务降级篇
一、简介https://github.com/alibaba/sentinel/wiki/%E7%86%94%E6%96%AD%E9%99%8D%E7%BA%A7RT(平均响应时间,秒级)平均响应时间,超过阈值且在时间窗口内通过的请求 >= 5,两个条件同时满足后出发降级;窗口期过后关闭断路器;RT最大4900(更大的需要通过-Dcsp.sentinel.statistic.max.rt=XXX才能生效);异常比例(秒级)QPS>=5且异常比例(秒级统计)..原创 2020-09-05 09:00:38 · 2715 阅读 · 0 评论 -
Spring Cloud Alibaba Sentinel之流控规则篇
一、简介上一篇文章我们成功搭建了sentinel流量监控平台,并且实现了对我们微服务应用的监控功能,但是sentinel提供的功能不仅仅只有这些,还有强大的流量控制功能,本篇文章我们就将对流量控制做一个比较详细的总结。二、相关术语解释资源名:唯一名称,默认请求路径;针对来源:sentinel可以针对调用者进行限流,填写微服务名,默认default(不区分来源);阈值类型/单机阈值:QPS:每秒钟的请求数量,当调用该api的QPS达到阈值的时候,进行限流; 线程数:当调用该api的线原创 2020-09-03 20:53:17 · 2453 阅读 · 0 评论 -
Spring Cloud Alibaba Sentinel之入门篇
一、简介官网地址:https://github.com/alibaba/Sentinelhttps://github.com/alibaba/Sentinel/wiki/%E4%BB%8B%E7%BB%8D二、Sentinel下载安装运行【a】下载地址:https://github.com/alibaba/Sentinel/releases这里我们选择下载:sentinel-dashboard-1.7.0.jar作为本次演示所使用Sentinel版本。【b】安装Sentin.原创 2020-09-02 20:53:26 · 1295 阅读 · 0 评论 -
Spring Cloud Alibaba Nacos集群和持久化配置
一、简介前面我们已经使用Nacos作为我们的服务注册中心和服务配置中心,但都是单机版的,在实际生产环境中,服务不可能单机部署,如果Nacos突然发生宕机现象,那么带来的后果可想而知,所以在学习的时候采用单机模式还是可以的,上线后必须采用集群模式搭建Nacos,保证其高可用。本篇文章将详细介绍如何搭建一个三个节点组成的Nacos集群。官网地址:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html 集群部署架构图 http://ip原创 2020-09-02 10:35:18 · 1322 阅读 · 0 评论 -
Spring Cloud Alibaba Nacos之服务配置中心
一、简介二、搭建服务配置中心新建一个module【springcloudalibaba-nacos-config-server3377】,通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。【a】pom.xml依赖:加入spring-cloud-starter-alibaba-nacos-config依赖<?xml version="1.0" encoding="UTF-8"?&...原创 2020-08-30 21:08:52 · 1275 阅读 · 0 评论 -
Spring Cloud Alibaba Nacos之服务注册中心
一、简介为什么叫Nacos?前四个字母分别为Naming和Configuration的前两个字母,最后的s为service。Nacos是什么?一个更易于构建原生应用的动态服务发现、配置管理和服务管理平台(Dynamic Naming and Configuration Service),Nacos就是注册中心 + 配置中心的组合。等价于:Nacos = Eureka + Config + BusNacos能干嘛?替代Eureka做服务注册中心;替代Config做服务配置中心.原创 2020-08-30 14:47:26 · 2341 阅读 · 0 评论 -
Spring Cloud Alibaba入门简介
目录一、简介二、主要功能三、主要组件四、如何使用五、版本管理规范六、总结一、简介前面我们总结了一些关于Spring Cloud系列的博客:https://blog.csdn.net/weixiaohuai/category_7364840.html;感兴趣的小伙伴可以系统学习一波,努力学完虽说不能保证精通,至少入个门还是no problem的啦,还是有一些干货的,学起来!提起微服务,不得不提 Spring Cloud 全家桶系列,SpringCloud 是若干个框架的原创 2020-08-29 20:52:45 · 1115 阅读 · 0 评论