概述 定义 Spring Cloud Alibaba Seata 官网地址 https://seata.io/zh-cn/ 最新版本1.5.2 Spring Cloud Alibaba Seata 文档地址 https://seata.io/zh-cn/docs/overview/what-is-seata.html Spring Cloud Alibaba Seata GitHub源码地址 https://github.com/seata/seata Spring Cloud Alibaba…
事务模式 概述 在当前的技术发展阶段,不存一个分布式事务处理机制可以完美满足所有场景的需求.一致性.可靠性.易用性.性能等诸多方面的系统设计约束,需要用不同的事务处理机制去满足. 目前使用的流行度情况是:AT>TCC > Saga,Seata 项目最核心的价值在于:构建一个全面解决分布式事务问题的标准化平台.基于 Seata,上层应用架构可以根据实际场景的需求,灵活选择合适的分布式事务解决方案. Seata针对不同的业务场景提供了四种不同的事务模式,对比如下: AT模式:AT 模式的一阶段.二…
概述 定义 Sentinel官网地址 https://sentinelguard.io/zh-cn/index.html 最新版本v1.8.4 Sentinel官网文档地址 https://sentinelguard.io/zh-cn/docs/introduction.html Sentinel GitHub源码地址 https://www.github.com/alibaba/Sentinel Sentinel是面向分布式服务架构的高可用防护组件,主要以流量为切入点,从流量控制.熔断降级.系…
实战示例 控制台初体验 Sentinel的控制台启动后,控制台页面的内容数据都是空的,接下来我们来逐步操作演示结合控制台的使用,在上一节也已说明整合SpringCloud Alibaba第一步先加入spring-cloud-starter-alibaba-sentinel启动器依赖 配置文件添加参数,dashboard即为控制台的端口,我们是本地启动使用8858端口 spring: cloud: sentinel: enabled: true transport: dashboard: loca…
概述 定义 Spring Cloud Gateway 官网地址 https://spring.io/projects/spring-cloud-gateway/ 最新版本3.1.3 Spring Cloud Gateway 文档地址 https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/ Spring Cloud Gateway GitHub源码地址 https://github.com/spring-cl…
实战 路由过滤器工厂 路由过滤器允许以某种方式修改传入的HTTP请求或传出的HTTP响应.路由过滤器的作用域是特定的路由.SpringCloud Gateway包括许多内置的GatewayFilter工厂.目前官网提供33种路由过滤器工厂,前面示例中filters里的StripPrefix就是其中一种: 在库存微服务控制器中增加打印 @RequestMapping("/deduct") public String storage(HttpServletRequest request){…
前面介绍了批量处理的WorkCount是如何执行的 <从flink-example分析flink组件(1)WordCount batch实战及源码分析> <从flink-example分析flink组件(2)WordCount batch实战及源码分析----flink如何在本地执行的?> 这篇从WordCount的流式处理开始 /** * Implements the "WordCount" program that computes a simple wor…
Seata全称是Simple Extensible Autonomous Transaction Architecture,是由阿里巴巴开源的具有高性能和易用性的分布式事务解决方案. 微服务中的分布式事务问题 我们的电商系统使用的是微服务架构,由仓库.订单.用户三个微服务组成,三个微服务分别有着自己的本地数据源.开始事务后,每个服务本身能保证数据一致性,但是服务之间将无法保证数据一致性.这也许是很多企业遇到的问题,而Seata就是解决此类问题的. Seata组织结构 事务协调器(TC):维护全局…
前言 在SOA.微服务架构流行的年代,许多复杂业务上需要支持多资源占用场景,而在分布式系统中因为某个资源不足而导致其它资源占用回滚的系统设计一直是个难点.我所在的团队也遇到了这个问题,为解决这个问题上,团队采用的是阿里开源的分布式中间件Fescar的解决方案,并详细了解了Fescar内部的工作原理,解决在使用Fescar中间件过程中的一些疑虑的地方,也为后续团队在继续使用该中间件奠定理论基础. 目前分布式事务解决方案基本是围绕两阶段提交模式来设计的,按对业务是有侵入分为:对业务无侵入的基于XA协…
SpringBoot中文注释项目Github地址: https://github.com/yuanmabiji/spring-boot-2.1.0.RELEASE 本篇接 SpringApplication对象是如何构建的? SpringBoot源码(八) 1 温故而知新 温故而知新,我们来简单回顾一下上篇的内容,上一篇我们分析了SpringApplication对象的构建过程及SpringBoot自己实现的一套SPI机制,现将关键步骤再浓缩总结下: SpringApplication对象的构造…