gatewayworker心跳间隔大于60秒会触发onclose吗?

手册上说“客户端定时每X秒(推荐小于60秒)向服务端发送特定数据,服务端设定为X秒没有收到客户端心跳则认为客户端掉线,并关闭连接触发onClose回调。” 而之所以推荐小于60秒是因为“很多路由节点会清理60秒内不活跃的连接,导致还没来得及发送心跳,连接就断开了。”参考自walker大大在https://wenda.workerman.net/question/4615 这个问题中的回复。 问题一:现在我设置的$ga...

dou号 发表与 2019-12-24 2282 浏览 2 回答
client_id重复

如图所示,我的两台设备50127和50128,在onMessage()里打印出对应的client_id时,却发现两台设备对应的client_id一样,之前一直没遇到过这种情况。文档中说client_id是唯一的,请问大神这是什么原因导致的?...

dou号 发表与 2019-10-16 2118 浏览 1 回答
businessworker突然全掉了,重启半小时后又全部掉了

1.平时晚上10点左右业务量都比较低了,但是昨天晚上BusinessWorker进程突然全没了,查看log日志,发现只有昨天凌晨时候有一次错误4,可能是有链接连接到register上了,但晚上10点左右日志并没有记录下来任何东西,应该不是这个错误吧。但保险起见,还是把注册地址改成127.0.0.1了($register = new Register('text://127.0.0.1:xxxx');)。在重启gate...

dou号 发表与 2019-09-03 2926 浏览 3 回答
gatewayworker报错error3,error4,11,64000

最近gatewayworker报错error3,error4,exit_status:11,exit_status:64000. 1:出现error4应该是自己的注册地址设置的有问题,现在已经改成了127.0.0.1; 2:查看文档http://wiki.workerman.net/Error3上面说有两个原因,一个是gateway和businessworker的registerAddress设置错误或不一致,一个是...

dou号 发表与 2019-08-28 2849 浏览 1 回答
gateway重启后,用status指令查看时发现没有businessworker

昨天晚上重启gateway的时候就有发现这个问题,守护进程启动成功之后,用status指令查看发现没有businessworker,然后我的设备也就一直连不上,之后就一直重启,最后就好了。然后今天重启的时候又出现了这个问题,也是重启多次后才连上了businessworker,然后因为其他原因又重启了一次,结果就一直连不上了,然后现在我把businessworker连接数调大,连接上了,请问这个原因是因为busines...

dou号 发表与 2019-07-29 2699 浏览 5 回答
设备连上gateway后断开,触发onclose却取不到session值

想请教一个问题,当我的设备在连上gateway后突然断开,是否可以通过$SESSION来获取这台设备id并更新对应的设备状态,因为我现在遇到的情况是我的设备断开了连接,触发了onclose但是$SESSION却没有值,导致无法运行update函数更新设备状态。手册上说客户端或服务端与Gateway进程的连接断开时触发onclose,而$_SESSION的生命周期与client_id对应socket连接的生命周期相同,...

dou号 发表与 2019-05-08 3127 浏览 2 回答
阿里云服务器cpu过高

大神,我用过的是gateway worker,现在发现服务器cpu很高,于是用top指令查看了一下,如左图所示,上面几个进程都占了很多cpu,然后用cd /proc/PIDID查看了一下对应的pid,发现如图右所示,cwd指向的都是gatewayworker文件夹,请问大神这该如何处理...

dou号 发表与 2019-03-01 2821 浏览 2 回答
error4

大神,我使用gatewayworker有一段时间了,现在在workerman日志中发现了error4的问题,这个错误貌似从我一开始使用gatewayworker就出现了,只是之前一直没有注意,然后我根据提示查看了http://wiki.workerman.net/Error4文档,上面说检查本机是否有程序链接Register服务,于是我根据workerman日志上面提示的pid,查了一下路径,如图所示,其中cwd表示...

dou号 发表与 2019-02-12 2133 浏览 1 回答
gatewayworker如何群发指令到部分设备端

问题需求:群发指令到部分设备端 解决思路:将该部分设备分组,然后利用sendtogroup群发指令 疑问1:对设备进行按需分组,请问是需要通过客户端发送含有标志性字符的指令,比如“group:team”,然后gatewayworker通过该标志性字符来将其对应的clientid加入team组中吗?如果客户端发送的指令没有标识符,在服务端的gatewayworker是不是就无法按需分组了? 疑问2:我的所有指令都含有设...

dou号 发表与 2018-12-14 2696 浏览 2 回答
gatewayworker获取设备端mac地址失败

如下图所示,上边的是打印的mac地址,下边是在events文件里的onMessage()函数里写的代码,打印mac地址和ip,但是打印出来的mac地址确是本地局域网的mac地址,而且可能是因为设备用的是移动物联卡的缘故,它的ip貌似是动态ip,因为会变化,所以现在也无法通过ip来确认设备身份。 现在想请问大神以下几个问题 问题一:能否通过gatewayworker获取设备的mac地址? 问题二:如果可以,仅仅通过设备...

dou号 发表与 2018-11-12 2828 浏览 1 回答
Worker::$stdoutFile打印信息格式问题

我通过Worker::$stdoutFile打印events文件里面var_dump的信息,信息由时间,字符串和接受到的信息组合而成,红色部分即收到的信息。然后发现了一个问题,如图所示,在打印的信息中,两条信息出现在了一个string里面,即string里面包含了另一个string,更奇怪的是外面的string所包含的字节数还和里面的一样,这种情况出现不多,请问这是为什么?还有就是最后那个引号为什么会换行显示?...

dou号 发表与 2018-11-02 2506 浏览 1 回答
gatewayworker如何确认对方身份

手册上说可以gatewayworker可以通过$_SERVER来获取对方ip,但是在局域网里面没办法判断信息的具体来源,无法具体到某一台设备,所以现在想获取mac地址,请问gatewayworker可以在收到对方发来的信息时获取对方的mac地址吗?...

dou号 发表与 2018-11-02 2656 浏览 2 回答
如何按天记录gatewayworker业务日志

大神,我想记录gatewayworker的业务日志,但Worker::$stdoutFile似乎只能在启动gatewayworker的时候创建文件,并不能按天来建立日志文件记录业务日志,我在workerman手册上看到logfile,如图所示,但是用file_put_contents打印数据会不会对gatewayworker的性能有什么影响?包括业务进程,业务处理时间什么的。目前我这边打印的数据,每条最多也不到一百个...

dou号 发表与 2018-10-29 5658 浏览 3 回答
设备成功登陆,接受心跳指令时Gateway::isUidOnline($uid)判断不在线

问题一:worker大神,我这边的设备已经成功登陆了,并绑定了uid,在接受心跳指令的时候,我这边做了一个uid是否在线的判断,但是设备在第一次成功登陆,并发送心跳过来时,Gateway::isUidOnline($uid)总是判断不在线,当设备重新登陆后,再发送心跳时,Gateway::isUidOnline($uid)会判断在线,我打印了$client_idarr,即uid绑定的clientid; Gateway...

dou号 发表与 2018-09-13 4742 浏览 3 回答
php客户端socket

我服务端用的是gatewayworker,协议是tcp,客户端socket连接程序如图所示,现在遇到的问题是:当我调用客户端socket发送数据到服务器时,我只调用了一次,但是客户端会重复发送数据到服务器,大多数情况都是我发起调用后整整一分钟,客户端又自动重新向服务器发送数据,但也就重发一次,有想过是不是我客户端程序所在页面自动刷新了,但测试后发现并没有,所以在想是不是我socket程序有什么问题,还请大神指教...

dou号 发表与 2018-08-22 2403 浏览 1 回答
gatewayworker抓包

大神,抓包时不是websocket协议的也用tcpdump -Ans 4096 -iany port 7272这条指令吗?我本地打不开http://127.0.0.1:55151这个链接,页面显示无法访问此网站,后来我换成自己的端口,浏览器还是打不开这个地址...

dou号 发表与 2018-07-18 2147 浏览 1 回答
gatewayworker并发配置

我用gatewayworker时为了适应高并发将gateway进程调成了cpu核的4_3倍,将bussiness进程调为cpu核的4_1倍,我的cpu是双核,现在可支持并发量上去了,但是刚刚看文档才发现上面说的是gateway调成cpu核数相等,business调成cpu核数的三倍,瞬间懵了,请问大神这是什么情况,还有就是这个cpu核数是看我服务器的cpu核数吧,那我是要将gateway进程调成2吗?我这边是阻塞式I...

dou号 发表与 2018-07-17 5014 浏览 1 回答
ab压力测试

请问我在做ab测试时,其中的ip是要和下图$worker中的ip一样是吗?还有就是我在ab测试结果中出现了一个警告,the median and mean for the processing time are not within a normal deviation ,these results are probably not that reliable.这个需要注意吗?我用不同参数测了三次,只有第二次测试时出...

dou号 发表与 2018-07-12 4432 浏览 1 回答
workerman压测

@walkor 我在git上下载了workerman压测代码workerman-bench-master,然后放在了gatewayworker同级目录下,然后启动start.php,再执行./benchmark -n10000 -h1 -c400 -p56789 127.0.0.1这段代码,端口和ip我都换成自己的了,但是系统显示no such file or directory,是我的压测代码位置放的不对吗?...

dou号 发表与 2018-07-11 3107 浏览 1 回答
gatewayworker压测

@walkor 你好,我用了你的这段程序进行gatewayworker压测;http://wenda.workerman.net/?/question/1453; 但我在终端运行时只显示1 connections complete ;con close 就没有了,而且在加了$con->transport = 'ssl'后,报php警告:stream socket client() : ssl: connecti...

dou号 发表与 2018-07-06 2506 浏览 3 回答

dou号

1746
积分
0
获赞数
0
粉丝数
2018-06-30 加入
🔝