zoukankan      html  css  js  c++  java
  • Spring事务的一些基本知识(四)大事务的危害与优化

    【汇总表】

    【大事务带来的风险】

    并发情况下,数据库连接池容易被撑爆(如果配置连接池大小虽然不会撑爆、但会占用大量连接池资源)

    锁定太多的数据,造成大量的阻塞和锁超时

    执行时间长,容易造成主从延迟,而且造成大量锁等待

    回滚所需要的时间比较长

    undo log日志膨胀,不仅增加了存储的空间,而且可能降低查询的性能

    zebra 事务是走主库,滥用事务有可能导致主库压力过大,数据库整体处理能力下降等

    【优化点】

    1、移除无效声事务

    只有读取操作
    只有一条单条的更新操作
    多次更新操作不在同一个数据库

    2、缩短事务作用范围
    减少事务处理范围,将需要处理的事务SQL操作单数封装方法,事务内剔除无效的流程和查询

    3、剔除事务内耗时操作
    包括RPC调用/接口埋点/leaf调用/线程池任务/Spring事件

    4、事务最佳实践
    Spring声明式事务最佳实践,异常处理等
    将事务使用方法专门抽象一层,避免分散

    【参考】

    https://blog.csdn.net/fengshizty/article/details/117385796

  • 相关阅读:
    linux ——process
    linux ipc—msgqueue
    JDEclipse源码查看
    用 AXIOM 促进 XML 处理
    使jets3t支持https
    正版太贵了……
    Axis2学习笔记 (Axiom 篇 )
    基于Hadoop的海量文本处理系统介绍
    详解ASP.NET MVC的请求生命周期
    .Net相关的资源连接
  • 原文地址:https://www.cnblogs.com/bruceChan0018/p/15738105.html
Copyright © 2011-2022 走看看