A服务器GatewayClient调用调用B服务器worker失败的,没有数据

0

1、根据文档如下


/**
*====这个步骤是必须的====
*这里填写Register服务的ip(通常是运行GatewayWorker的服务器ip,非0.0.0.0)和Register端口
*注意Register服务端口在start_register.php中可以找到
*这里假设GatewayClient和Register服务都在一台服务器上,ip填写127.0.0.1
**/
Gateway::$registerAddress = '127.0.0.1:1236';

这里的registerAddress 我改成Gateway::$registerAddress = 'B服务器IP:1236';
同时将B服务器的gateway.php的lnip改成B内网IP,发现GatewayClient获取不到数据


2、接着我将步骤一中B服务器的gateway.php的lnip改成B公网IP,启动gatewayworker失败,不停显示Warning: stream_socket_server(): unable to connect to tcp://**B公网IP**:1236 (Cannot assign requested address)


3、我怀疑是gateway->startPort的端口被墙了,我又去阿里云把那几个端口打开,步骤一步骤二还是原来的效果。。。。。。


4、本地虚拟机同台机器可以。

已邀请:

walkor

赞同来自: happyday

1、GatewayClient要和gatewayWorker版本对应,否则无法通讯。
2、A B服务器都在内网的话 lanip写内网ip即可。

happyday - IT物联网

赞同来自:

补充:lnIP写公网IP就会无限报通讯端口无法连接

happyday - IT物联网

赞同来自:

补充:
我A服务器调用GatewayClient根据文档是这样的
Gateway::$registerAddress = B服务器公网IP:端口';

要回复问题请先登录注册