【匯總表】

【大事務帶來的風險】
並發情況下,數據庫連接池容易被撐爆(如果配置連接池大小雖然不會撐爆、但會占用大量連接池資源)
鎖定太多的數據,造成大量的阻塞和鎖超時
執行時間長,容易造成主從延遲,而且造成大量鎖等待
回滾所需要的時間比較長
undo log日志膨脹,不僅增加了存儲的空間,而且可能降低查詢的性能
zebra 事務是走主庫,濫用事務有可能導致主庫壓力過大,數據庫整體處理能力下降等
【優化點】
1、移除無效聲事務
只有讀取操作
只有一條單條的更新操作
多次更新操作不在同一個數據庫
2、縮短事務作用范圍
減少事務處理范圍,將需要處理的事務SQL操作單數封裝方法,事務內剔除無效的流程和查詢
3、剔除事務內耗時操作
包括RPC調用/接口埋點/leaf調用/線程池任務/Spring事件
4、事務最佳實踐
Spring聲明式事務最佳實踐,異常處理等
將事務使用方法專門抽象一層,避免分散
【參考】
https://blog.csdn.net/fengshizty/article/details/117385796
