事务

原来kafka也有事务啊,再也不担心消息不一致了

## 前言 现在假定这么一个业务场景,从`kafka`中的`topic`获取消息数据,经过一定加工处理后,发送到另外一个`topic`中,要求整个过程消息不能丢失,也不能重复发送,即实现端到端的`Exactly-Once`精确一次消息投递。这该如何实现呢? ![](https://p3-juejin ... »

alvinscript

聊聊Seata分布式解决方案AT模式的实现原理

### 什么是Seata分布式事务解决方案 Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。为用户提供了AT、TCC、SAGA和XA事务模式,为用户打造一站式的分布式解决方案。 ### AT模式 AT模式目前来看是Seata框架独有的一种模式,其它的分布式框架上 ... »

zhiyong-ITNote

Spring基于Aop实现事务管理流程详细讲解

目录 aop在spring事务中的运用 基于纯注解实现spring事务管理 基于xml文件实现Spring事务管理 aop在spring事务中的运用 在Spring中,AOP和事务管理是两个常用的模块。AOP模块通过拦截器来实现对方法的增强,而事务管理模块则通过管理事务的开启、提交和回滚等 »

spring的事务传播属性REQUIRED_NESTED原理

目录 传统事务中回滚点的使用 事务的传播属性NESTED addAreaAndGood()开启事务 addGood()获得事务并创建回滚点 addGood()提交事务时释放回滚点 addArea()获得事务并创建回滚点 addArea()回滚事务释放回滚点 addAreaAndGood()回滚这个 »

redis 事务

1. 事务概述: 1.1 什么是事务: 指可以一次执行多个命令,本质是一组命令的集合。 一个事务中的所有命令都会序列化,按顺序的串行化执行而不会被其他命令插入,不许加塞。 即:一个队列中,一次性、顺序性、排他性的执行一系列命令。 1.2 与传统关系型数据库的事务相比redis事务的不同之处: 我觉得 ... »

chaodahao

关于Spring事务隔离、传播属性与@Transactional注解

mysql默认的隔离级别是repeatable_read 根据spring文档,数据库一共有4个隔离级别 read_uncommit read_commited读已提交 ,解决了脏读 repeatable_read可重复读,解决了不可重复读 serializable顺序化 ,解 »

一文搞懂 MyBatis的事务管理机制

目录 一、事务概述 二、MyBatis 实现事务的方式 1. 编程式事务 2. 声明式事务 (1)JDBC 事务管理器 (2)Spring 事务管理器 三、事务源码理解 (1)TransactionFactory (2)JdbcTransaction (3)ManagedTransactio »

mysql-高级功能(触发器、存储过程、视图、事务)

触发器-created trigger 触发器就是当达到某种条件自动触发 当你在对数据进行增删改的情况下会自动触发触发器,执行代码 1.触发器分为六种情况 之前:before 之后:after 增加前、增加后 before insert 、 after insert 删除前、删除后 before d ... »

guyouyin123

关于Spring中@Transactional事务回滚的注意事项

目录 一、Spring 默认事务 1.1、抛出 unchecked 和 checked 异常都回滚 1.2、总结 二、使用 Spring中 @Transactional 注解的注意事项 一、Spring 默认事务 Spring中 @Transactional 注解,默认情况下,只对抛 »

关于SpringBoot的异常回滚和事务的使用详解

目录 Springboot中事务的使用: 开启事务的方法中事务回滚的情况: Springboot @Transactional 事务不回滚 一、异常捕获的原因 二、数据库引擎不支持回滚(使用MYSQL就很可能是这个原因) 三、发生了自调用情况 四、补充: Springboot中事务的使用 »

关于RocketMQ使用事务消息

目录 说明 原理 事务消息处理流程 生产端 消费端 说明 事务消息: 1、不支持延时消息和批量消息2、如果消息没有及时提交,默认check 15次,可以通过Broker的transactionCheckMax参数配置次数。如果超时15次依然没有得到明确结果,将会打印异常信息,具体的处理策 »

高级Java程序员必问,Redis事务终极篇

Redis事务(Transaction)通过将多个Redis操作封装为一个原子性的操作序列,确保在事务执行过程中,不会受到其他客户端的干扰。从而在保证数据一致性的同时,协调并发,提高数据操作的效率和性能 ... »

SpringBoot异步与事务一起使用的问题解决

最近遇到的一个场景,在一个被 @Transactional 注解的方法A中中调用了一个被 @Async 注解标记的方法B,由于方法B 在执行时方法A 的事务没有提交,但是方法B在执行过程中获取不到方法A中尚未提交的数据,从而最终倒是方法B执行异常。 @Transactional public v »

mysql基础_事务

定义 一个事务其实就是一个完整的业务逻辑,是一个最小的工作单元,不可再分,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 例如:王五向赵六的账户上转2000块钱,王五的账户上少2000块钱,赵六的账户上多2000块钱,这个操作是一个最小的工作单元, ... »

malinyan mysql

如何在微服务下保证事务的一致性

微服务架构是将单个服务拆分成一系列小服务,且这些小服务都拥有独立的进程,彼此独立,很好地解决了传统单体应用的上述问题,但是在微服务架构下如何保证事务的一致性呢? ... »

jingdongkeji

MySQL数据库事务原理及应用

目录 1 事务的使用 1.1 事务概念 1.2 事务的提交 1.3 事务的常见操作 2 事务隔离 2.1 事务并发时出现的问题 2.2 事务隔离级别 1 事务的使用 1.1 事务概念 事务就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部 »

Spring事务失效之常见场景分析

目录 一、事务方法访问修饰符非public,导致事务失效 二、@Transactional注解的方法抛出的异常不是spring的事务支持的异常,导致事务失效 三、数据表本身是不支持事务,导致事务失效 四、@Transactional注解所在的类没有被spring管理,导致事务失效 五、catch掉 »

06.事务

1. 事务简介 事务 是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 就比如: 张三给李四转账1000块钱,张三银行账户的钱减少1000,而李四银行账户的钱要增加1000。 这一组操作就必须在一个事务的 ... »

关于spring嵌套事务,我发现网上好多热门文章持续性地以讹传讹

事情起因是,摸鱼的时候在某平台刷到一篇spring事务相关的博文,文章最后贴了一张图。里面关于嵌套事务的表述明显是错误的。 更奇怪的是,这张图有点印象。在必应搜索关键词PROPAGATION_NESTED出来的第一篇文章,里面就有这这部份内容,也是结尾部份完全一模一样。 更关键的是,人家原文是表格, ... »

eryuan