203 Star 1.8K Fork 571

渔民小镇/ioGame

 / 详情

游戏逻辑服与同类型逻辑服通信,超时问题

已完成
拥有者
创建于  
2022-08-20 13:42

逻辑服之间的同步调用,请求用时稍微多一点就报超时了 Rpc invocation timeout[responseCommand TIMEOUT]! the address is 127.0.0.1:10200

评论 (1)

渔民小镇 创建了任务 3年前
渔民小镇 添加了
 
功能增强
标签
3年前
渔民小镇 任务状态待办的 修改为进行中 3年前
展开全部操作日志

在之前的版本中,使用通讯方式--游戏逻辑服与同类型逻辑服通信时,当目标游戏逻辑服中的业务处理时间过长时,框架不能按开发者的预期值返回(相当于超时了),现在改为默认是在调用端进行阻塞,直到得到目标游戏逻辑服返回的结果为止;

新增 SyncRequestMessageClientProcessor、SyncRequestMessage 来处理超业务逻辑时间比较长的业务。
这个改进对开发者是无感知的;

使用的处理方式还是: CompletableFuture、ForkJoinPool 等,即总耗时为最长那个业务逻辑的耗时;如,A用时1秒、B用时2秒、C用时2.2秒,那么总耗时大概是2.2秒;

但如果超过在 BrokerGlobalConfig.timeoutMillis 中设置的时间,仍然会做报错的提示,防止开发者因为编写业务逻辑时引发的问题;

渔民小镇 任务状态进行中 修改为已完成 3年前

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(1)
5475 iohao 1653332816
Java
1
https://gitee.com/iohao/ioGame.git
git@gitee.com:iohao/ioGame.git
iohao
ioGame
ioGame

搜索帮助