iohao / ioGame

无锁异步化、事件驱动架构设计的 java netty 网络编程框架; 轻量级,无需依赖任何第三方中间件或数据库就能支持集群、分布式; 适用于网络游戏服务器、物联网、内部系统及各种需要长连接的场景; 通过 ioGame 你可以很容易的搭建出一个集群无中心节点、集群自动化、分布式的网络服务器;FXGL、Unity、UE、Cocos Creator、Godot、Netty、Protobuf、webSocket、tcp、socket;java Netty 游戏服务器框架;
http://game.iohao.com
GNU Affero General Public License v3.0
834 stars 183 forks source link

请教一个问题,服务之间调用超时后,一直不能相互调用。但是服务是正常的,服务之间调用需要建立连接吗? #314

Closed githubfqy closed 2 months ago

githubfqy commented 2 months ago

你的问题 | 使用场景

描述你遇到的问题,或使用场景(询问框架能否满足此类需求) 2024-06-04 21:21:17.786 [RequestMessage-2-1] ERROR c.i.game.bolt.broker.core.client.BrokerClientItem.invokeModuleMessage - Rpc invocation timeout[responseCommand TIMEOUT]! the address is 10.0.0.3:10200 com.alipay.remoting.rpc.exception.InvokeTimeoutException: Rpc invocation timeout[responseCommand TIMEOUT]! the address is 10.0.0.3:10200 at com.alipay.remoting.rpc.RpcResponseResolver.preProcess(RpcResponseResolver.java:83) at com.alipay.remoting.rpc.RpcResponseResolver.resolveResponseObject(RpcResponseResolver.java:54) at com.alipay.remoting.rpc.RpcRemoting.invokeSync(RpcRemoting.java:186) at com.alipay.remoting.rpc.RpcClient.invokeSync(RpcClient.java:253) at com.iohao.game.bolt.broker.core.client.BrokerClientItem.invokeSync(BrokerClientItem.java:113) at com.iohao.game.bolt.broker.core.client.BrokerClientItem.invokeSync(BrokerClientItem.java:117) at com.iohao.game.bolt.broker.core.client.BrokerClientItem.invokeModuleMessage(BrokerClientItem.java:173) at com.iohao.game.action.skeleton.core.commumication.InvokeModuleContext.invokeModuleMessage(InvokeModuleContext.java:288) at com.iohao.game.action.skeleton.core.commumication.InvokeModuleContext.invokeModuleMessageData(InvokeModuleContext.java:185) at com.dmsh.login.client.SceneClientUtil.breakSceneLogin(SceneClientUtil.java:51) at com.dmsh.login.service.impl.ILoginServiceImpl.login(ILoginServiceImpl.java:188) at com.dmsh.login.controller.LoginAction.login(LoginAction.java:50) at com.dmsh.login.controller.LoginActionMethodAccess.invoke(Unknown Source) at com.iohao.game.action.skeleton.core.flow.interal.DefaultActionMethodInvoke.invoke(DefaultActionMethodInvoke.java:46) at com.iohao.game.action.skeleton.core.DefaultActionCommandFlowExecute.execute(DefaultActionCommandFlowExecute.java:62) at com.iohao.game.action.skeleton.core.ActionCommandHandler.handler(ActionCommandHandler.java:41) at com.iohao.game.action.skeleton.core.BarSkeleton.handle(BarSkeleton.java:106) at com.iohao.game.bolt.broker.core.common.processor.hook.DefaultRequestMessageClientProcessorHook.lambda$processLogic$0(DefaultRequestMessageClientProcessorHook.java:66) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) 2024-06-04 21:21:17.786 [RequestMessage-2-1] ERROR c.i.g.a.s.c.f.i.DefaultActionMethodExceptionProcess.processException - Cannot invoke "com.iohao.game.action.skeleton.protocol.ResponseMessage.getData()" because "responseMessage" is null java.lang.NullPointerException: Cannot invoke "com.iohao.game.action.skeleton.protocol.ResponseMessage.getData()" because "responseMessage" is null at com.iohao.game.action.skeleton.core.commumication.InvokeModuleContext.invokeModuleMessageData(InvokeModuleContext.java:187) at com.dmsh.login.client.SceneClientUtil.breakSceneLogin(SceneClientUtil.java:51) at com.dmsh.login.service.impl.ILoginServiceImpl.login(ILoginServiceImpl.java:188) at com.dmsh.login.controller.LoginAction.login(LoginAction.java:50) at com.dmsh.login.controller.LoginActionMethodAccess.invoke(Unknown Source) at com.iohao.game.action.skeleton.core.flow.interal.DefaultActionMethodInvoke.invoke(DefaultActionMethodInvoke.java:46) at com.iohao.game.action.skeleton.core.DefaultActionCommandFlowExecute.execute(DefaultActionCommandFlowExecute.java:62) at com.iohao.game.action.skeleton.core.ActionCommandHandler.handler(ActionCommandHandler.java:41) at com.iohao.game.action.skeleton.core.BarSkeleton.handle(BarSkeleton.java:106) at com.iohao.game.bolt.broker.core.common.processor.hook.DefaultRequestMessageClientProcessorHook.lambda$processLogic$0(DefaultRequestMessageClientProcessorHook.java:66) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833)

预期值

期望的预期值

实际值

实际值

复现步骤

描述复现步骤,并提供复现 demo

版本

iohao commented 2 months ago

不需要