最新【Seata】分布式事务框架Seata踩坑集锦(1),一个Java程序员的腾讯面试心得

总结

虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。

架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。

如果你也想成为一名好的架构师,那或许这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。

image

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

Seata-All 在引入相应的jar包的时候都是 <scope>provide</scope>

在这里插入图片描述

说明我们要引入对应的依赖才行; 按需引入;

同理 如果用的是Redis的注册中心也要引入redis的客户端

com.alibaba.nacos

nacos-client

1.3.0

redis.clients

jedis

2.9.0


坑3 NotSupportYetException: not support register type: null


在引入seata的过程中,启动的时候报如下的错误

nested exception is io.seata.common.exception.NotSupportYetException:

not support register type: null

io.seata.common.exception.ShouldNeverHappenException:

Can’t find any object of class org.springframework.context.ApplicationContext

他的原因就是SpringApplicationContextProvider没有被执行到

在这里插入图片描述

因为我的是用seata-spring-boot-starter方式启动的;然后又手贱配置了GlobalTransactionScanner

在这里插入图片描述

那么这个GlobalTransactionScanner开始加载的时候,SpringApplicationContextProvider并没有被执行;GlobalTransactionScanner需要依赖于SpringApplicationContextProvider, 所以报错了

解决方法: seata-spring-boot-starter方式启动已经自动加载了GlobalTransactionScannerSeataAutoConfiguration

在这里插入图片描述

如果一定要自己手动加载的话 ,请加上注解

@DependsOn({BEAN_NAME_SPRING_APPLICATION_CONTEXT_PROVIDER, BEAN_NAME_FAILURE_HANDLER})

在这里插入图片描述

但是,没有必要手动配置

配置 GlobalTransactionScanner,使用 seata-all 时需要手动配置,使用 seata-spring-boot-starter 时无需额外处理。


坑4 can not register RM,err:can not connect to services-server.


之前一直好好的,过几天启动就报这个错了,后来我看了一下注册中心,注册了好几个ip;

都是之前注册过的,不知道为啥没有被清理;

io.seata.common.exception.FrameworkException:

can not register RM,err:can not connect to services-server.

在这里插入图片描述

解决方案 :把key删掉重新启动 seata-server


坑5 Could not initialize class io.seata.rm.datasource.undo.UndoLogParserFactory$SingletonHolder


接入Seata的时候 有报下面的错误

java.lang.NoClassDefFoundError:

Could not initialize class io.seata.rm.datasource.undo.UndoLogParserFactory$SingletonHolder

表面上看起来是那个异常,但是你打个断点进去查看会发现最终的异常是下面这个

java.lang.NoClassDefFoundError:

com/fasterxml/jackson/databind/ObjectMapper

在这里插入图片描述

解决方案:加入jackson-databind依赖就行

最后

我还为大家准备了一套体系化的架构师学习资料包以及BAT面试资料,供大家参考及学习

已经将知识体系整理好(源码,笔记,PPT,学习视频)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

…(img-4JuweJvk-1715655533642)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值