升级了1.6.9之后,GatewayWorker插件无法根据uid获取在线的用户,返回都是0

qufucl

问题描述

用composer u 升级最新版。正常使用的程序。GatewayWorker 获取用户在线不在在线,返回的都是0

程序代码或配置

重现问题的步骤

操作系统环境及workerman/webman等具体版本

linux系统

226 2 0
2个回答

qufucl

测试了一下,每次调用Gateway前 添加Gateway::$registerAddress = '127.0.0.1:1236'; 就可以

  • 暂无评论
walkor 打赏

webman升级不影响gateway-worker使用。
在非BusinessWorker进程调用gateway接口需要先设置Gateway::$registerAddress,相当于gatewayClient的用法

  • qufucl 28天前

    可是原来正常使用的。就是升级之后就不管了

  • qufucl 28天前

    以前的版本是1.5.0

  • walkor 28天前

    你在哪里调用的接口,webman控制器?

  • qufucl 28天前

    对,webman控制器。原来一直都是正常的。

  • walkor 28天前

    控制器不属于businessWorker进程,在非businessWorker进程里调用gateway接口都需要设置Gateway::$registerAddress=xxx用来表示调用的哪个gatewayWorker的服务。如果你之前不用设置就可以,应该是因为刚好 Gateway::$registerAddress的默认值是你要的值,也可能你改过gatewayWorker的源码的默认值,然后更新后gatewayWorker源码被覆盖。
    不管是什么原因,但是控制器里要调用gateway接口必须保证Gateway::$registerAddress的值是正确的值。

  • qufucl 28天前

    好的,那我就改一下现在的代码,谢谢

×
🔝