lydong_
习惯沉淀
采纳率75%
2021-02-25 16:05

java面试 大事务拆解为小事务 有这种场景吗?

10
已结题

java面试 大事务拆解为小事务 有这种场景吗?

  • 点赞
  • 收藏
  • 复制链接分享

2条回答

  • hunger_wang hunger_wang 2月前

    大事务拆解成小事务,一般方法:
    1、将查询类sql移出事务范围
    2、对必须要事务操作的业务分类到小事务(前提是能划分)。假如程序有4个步骤A、B、C、D,AB做一个事务,CD做一个事务。

    小事务可以减少锁的竞争,高并发情况下,提高程序吞吐量。

    类比ConcurrentHashMap,ConcurrentHashMap就是采用分段锁(类似小事务),比一个锁包裹的HashMap吞吐量高。

    点赞 1 评论 复制链接分享
  • u013646034 navy-lemon 2月前

    大事务 比如一些比较复杂的sql语句,有误service层带有 事务注解,导致这一个查询一直僵持,这个事务很有可能会锁住多张表 多条数据导致其他应用无法正常执行

    拆解为小事务,可以优化sql性能 拆解sql语句,以及 优化表达到效果

    点赞 1 评论 复制链接分享