全局异常下微服务整合Seata分布式事务失效解决方案

DBC 1.7K 0

简介:自定义全局异常下分布式事务失效解决方案

  • 问题: 微服务场景下,配置了统一全局异常处理,导致seata在AT模式下无法正常回滚问题
    • 如果使用Feign 配置了容错类(fallback)或者容错工厂(fallbackFactory),也是一样的问题
  • 原因:服务A调用服务B, 服务B发生异常,由于全局异常处理的存在(@ControllerAdvice), seata 无法拦截到B服务的异常,从而导致分布式事务未生效
  • 解决思路

可以使用这种方式操作——手工抛异常

全局异常下微服务整合Seata分布式事务失效解决方案插图

发表评论 取消回复
表情 图片 链接 代码

分享