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
875 stars 190 forks source link

压测脚本远程调用程序报错 #280

Closed gm1992 closed 4 months ago

gm1992 commented 4 months ago

你的问题 | 使用场景

描述你遇到的问题,或使用场景(询问框架能否满足此类需求) 在另一台局域网的电脑上使用压测脚本调用本机的iogame项目 one broker报错: Exception in thread "Bolt-conn-event-executor-4-thread-31001" java.lang.NullPointerException: Cannot invoke "com.iohao.game.bolt.broker.server.balanced.region.BrokerClientProxy.getBrokerClientType()" because "brokerClientProxy" is null at com.iohao.game.bolt.broker.server.balanced.BalancedManager.remove(BalancedManager.java:99) at com.iohao.game.bolt.broker.server.processor.connection.CloseConnectionEventBrokerProcessor.onEvent(CloseConnectionEventBrokerProcessor.java:76) at com.alipay.remoting.ConnectionEventListener.onEvent(ConnectionEventListener.java:44) at com.alipay.remoting.ConnectionEventHandler$1.run(ConnectionEventHandler.java:223) 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 4 months ago

277 类似

gm1992 commented 4 months ago

就是我的调用都被broker给拦截了,无法直接访问到逻辑服

gm1992 commented 4 months ago

具体调用报错 2024-05-10 10:26:07.818 INFO 120444 --- [-4-thread-62908] ConnectionTopic : Broker ConnectionEventType:【CONNECT】 remoteAddress:【192.168.2.22:56531】,Connection:【com.alipay.remoting.Connection@4a9e075e】 2024-05-10 10:26:07.818 INFO 120444 --- [-4-thread-62908] ConnectionTopic : Broker ConnectionEventType:【CLOSE】 remoteAddress:【192.168.2.22:56280】,Connection:【com.alipay.remoting.Connection@121feb5c】 2024-05-10 10:26:07.820 INFO 120444 --- [-4-thread-62909] ConnectionTopic : Broker ConnectionEventType:【CONNECT】 remoteAddress:【192.168.2.22:56532】,Connection:【com.alipay.remoting.Connection@7f3e201e】 at com.iohao.game.bolt.broker.server.balanced.BalancedManager.remove(BalancedManager.java:99) at com.iohao.game.bolt.broker.server.processor.connection.CloseConnectionEventBrokerProcessor.onEvent(CloseConnectionEventBrokerProcessor.java:76) at com.alipay.remoting.ConnectionEventListener.onEvent(ConnectionEventListener.java:44) at com.alipay.remoting.ConnectionEventHandler$1.run(ConnectionEventHandler.java:223) 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) Exception in thread "Bolt-conn-event-executor-4-thread-62894" java.lang.NullPointerException: Cannot invoke "com.iohao.game.bolt.broker.server.balanced.region.BrokerClientProxy.getBrokerClientType()" because "brokerClientProxy" is null

iohao commented 4 months ago

使用 dev 分支,本地编译一个版本试下。

gm1992 commented 4 months ago

我是用本机调用时可以的

gm1992 commented 4 months ago

// 启动模拟客户端 new ClientRunOne() .setInputCommandRegions(inputCommandRegions) // 远程调用 我会指定一下ip .setConnectAddress("192.168.x.xx") .idle(30) .startup(); }

iohao commented 4 months ago

https://github.com/iohao/ioGame/releases/tag/21.7