Flowable6.4 – 在事件中使用API接口

标题名称有点长,因为不太好描述今天所分享的内容。今天这篇的目的有两个: 1. 在事件中,处于不同的阶段,使用不同的API进行数据操作。  2. 从侧面验证上一篇文章《Flowable6.4 - 事件,事务》的结论。 如果事件包裹在事务内,即: @Overridepublic boolean isFireOnTransactionLifecycleEvent() {    return false;} 如果使用createXXXXQu...

Flowable6.4 – 事件,事务

最近有个需求,假设流程节点都是同步的,在UserTask创建完成后,推送一条企业微信消息。 需求很简单,实现上也没有什么难度,但是在实现FlowableEventListener这个接口的时候,发现和事务有所联系。 然后,很自然的想到一个问题:这个事件的触发到底是在事务提交之后,还是在事务提交之前。如果在事务提交之前触发了事件,事务提交时又失败回滚,这条发出的消息岂不是无用的。 所以,我又去翻了...

Flowable6.4 – 分布式事务

本文是基于SpringBoot、Atomikos、MyBatis、Druid实现的,全文总共分为两大部分: 介绍一下SpringBoot如何基于Atomikos实现分布式事务。介绍一下Flowable如何实现分布式事务。 首先,介绍一下SpringBoot如何实现分布式事务。 Jar包的主要引用如下: <dependency>      <groupId>org.springframework.boot</groupId>    ...

Flowable6.4 – 数据库访问及事务处理

​最近我对于Flowable的数据库访问过程很感兴趣,所以去阅读了一下这块的源码,大概梳理了一下。 直接从ProcessEngineConfigurationImpl内的init()方法作为切入点,跟踪其内部调用的initCommandExecutors()方法。 如果阅读过之前我写的源码分析文章,就可以知道Flowable是基于命令链来实现各种业务逻辑的,也可以知道initCommandExecutors()这个方法其实就是命令链的初始化方法。 着重关注一下get...

Spring编程式事务

我们经常用到的Spring事务声明方式是: 使用AOP切面声明事务。使用注解@Transactional声明事务。 这次试验一下另外一种事务实现方式:编程式事务。 以SpringBoot项目为例,使用以下代码声明事务: @Primary@Bean(name = "transactionManager")public DataSourceTransactionManager getDataSourceTransactionManager(@Qualifier("dataSource")DataSource dataSource)...

MySQL-死锁

本文基于MySQL的数据库引擎InnoDB,通过本文了解: 1. 死锁。 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象。以下是一些示例。 更新时互相等待 #第一个事务 START TRANSACTION; #第一步,更新1111这条数据 UPDATE test2 SET sum_count = sum_count + 1 WHERE id = '1111'; #第三步,更新2222这条数据 UPDATE test2 SET sum_count = sum_count + 1 WHE...

MySQL-幻读

本文基于MySQL的数据库引擎InnoDB,通过本文了解: 1. 幻读:在一个事务的两次查询中数据不一致。 上一篇了解了MySQL的不可重复读,但是有时候同一个事务中,前后两次查询显示数据有可能是不一致的,以下就为示例: 更新了其它事务中新增数据: #第一个事务 START TRANSACTION; #第一步,第二个事务插入前查询 SELECT * FROM test2; #第五步,第二个事务插入后查询 SELECT * FROM test2; #第六步,更新第...

MySQL-可重复读

本文基于MySQL的数据库引擎InnoDB,通过本文了解: 1. 可重复读。 首先,要了解的是,MySQL的事务默认隔离级别是:可重复读,即:在事务执行期间会锁定该事务以任何方式引用的所有行。 其它事务做更新时: #第一个事务 START TRANSACTION; #第一步,第二个事务更新前查询 SELECT * FROM test2; #第四步,第二个事务更新后查询 SELECT * FROM test2; #第六步,第二个事务提交后查询 SELECT * FROM test2; ...
Copyright © 字痕随行 保留所有权利.   Theme  Ality

用户登录

分享到: