使用tx-manager实现分布式事务 服务偶尔出现连接不上 请教各位谁遇到过此类问题?
c.c.t.n.service.impl.NettyServiceImpl : socket not connection wait 2 seconds.
2023-03-22 16:35:22.962 ERROR 7 --- [ XNIO-1 task-8] c.c.t.n.service.impl.NettyServiceImpl : socket not connection,check txManager server .
2023-03-22 16:35:22.964 ERROR 7 --- [ XNIO-1 task-8] h.i.c.s.c.GlobalExceptionHandlerResolver : 全局异常信息 ex=null
java.lang.reflect.UndeclaredThrowableException: null
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:759)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691)
at com.huidaxuan.ic2cloud.manage.service.impl.MemberCardServiceImpl$$EnhancerBySpringCGLIB$$d8415a92.saveMemberCard()
at com.huidaxuan.ic2cloud.manage.controller.MemberCardController.saveMemberCard(MemberCardController.java:85)
at com.huidaxuan.ic2cloud.manage.controller.MemberCardController$$FastClassBySpringCGLIB$$4718caa8.invoke()
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
Caused by: java.lang.Exception: tx-manager not connected ,please check tx-manager server
at com.codingapi.tx.aop.service.impl.TransactionServerFactoryServiceImpl.createTransactionServer(TransactionServerFactoryServiceImpl.java:52)
at com.codingapi.tx.aop.service.impl.AspectBeforeServiceImpl.around(AspectBeforeServiceImpl.java:50)
at com.huidaxuan.ic2cloud.common.transaction.tx.springcloud.interceptor.TxManagerInterceptor.around(TxManagerInterceptor.java:57)
at com.huidaxuan.ic2cloud.common.transaction.tx.springcloud.interceptor.TransactionAspect.transactionRunning(TransactionAspect.java:49)
at sun.reflect.GeneratedMethodAccessor2566.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:644)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:633)
at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
... 124 common frames omitted
该回答引用GPTᴼᴾᴱᴺᴬᴵ,具体如下:
看起来当前服务与txManager服务器之间的连接存在问题。错误消息表明套接字连接未建立,代码在等待2秒钟后记录了错误。这个问题的根本原因是txManager服务器无法到达或未运行。
异常堆栈跟踪显示,代码正在使用Spring AOP拦截方法调用,并使用txManager服务器执行分布式事务。然而,当代码尝试使用txManager服务器创建事务服务器实例时,连接失败并抛出异常。
要解决此问题,您需要检查txManager服务器的配置,并确保它正在运行并且可以从当前服务访问。您还可以检查两个服务器之间的网络连接,以确保没有防火墙或其他网络问题阻止连接。一旦您解决了连接问题,您就可以成功地使用txManager服务器执行分布式事务。
如果以上回答对您有所帮助,望采纳~谢谢