Spring 事务同步管理器:资源绑定与事务完成回调的执行顺序
订单事务提交后发送消息或清缓存时,为什么回调有时读不到数据、有时又让事务回滚?本文拆解 TransactionSynchronizationManager 的 ThreadLocal 资源绑定、同步注册与触发顺序,说明 beforeCommit 抛异常与 afterCommit 抛异常的差别,并给出可观测与降级思路。
共 2 篇文章
订单事务提交后发送消息或清缓存时,为什么回调有时读不到数据、有时又让事务回滚?本文拆解 TransactionSynchronizationManager 的 ThreadLocal 资源绑定、同步注册与触发顺序,说明 beforeCommit 抛异常与 afterCommit 抛异常的差别,并给出可观测与降级思路。
本文分析 Java 类加载器泄漏的典型模式,以 Spring Boot DevTools 频繁重启为贯穿场景,解释元空间持续增长直至 OOM 的根本原因。文章梳理类加载器引用链、ThreadLocal 残留、静态字段持有等关键泄漏路径,并结合 Eclipse Memory Analyzer 演示诊断步骤。读者将掌握识别和修复类加载器泄漏的方法,理解为何关闭线程池和清除上下文是防止泄漏的核心措施。