我想在业务逻辑中使用timer实现一些重发业务。 当数据发送完,我想用timer停留几秒,再发送2-3次。 可是我看文档,没有找到执行多次的方法。 所以我在一个执行一次的定时器中使用了 for循环,每次sleep几秒,请问这种有没有什么隐患?比如用户多了有什么后果?sleep太长会不会导致进程死掉之类的?...
RT。 我想实现: 用户在登录成功后,给用户的所有客户端发送一条数据。(不能使用sendToClientID) 但是经过测试,发现有的时候能发送成功,有的时候不能发送成功。 猜测可能是由于joinGroup是异步操作,一旦慢了的话,会导致发送数据的时候还没有加入分组,导致数据发送失败。 请问这个能不能改成同步模式?...
我阅读了以下两个文章后并没有解决问题: http://doc.workerman.net/640187 http://wenda.workerman.net/?/question/1275 经过测试,系统提示 $_SERVER $_SERVER 这两个值都不存在。我是直接启动的workerman。负载均衡80端口转workerman 80端口。 我用的是阿里的SLB负载均衡。 请问这个值该如何获取?...
rt 请问workerman有没有类似session_id的东西? client_id在用户失联重新连接后就会改变。且session都会丢失。 我想的是把session保存到redis中,用户重联后直接读取redis中的信息即可。但是没有唯一标识。...
在压力测试环境中,发现 Gateway::sendToUid($uid,$msg); 执行时间有些可怕,最多的超过6秒了。 机器环境:Gateway和Worker分离。 测试代码: ..... $t1 = microtime(true); Gateway::sendToUid('teacher_827181', $msgstr); $t2 = microtime(true); echo "\n\n发老师耗时...
GatewayConnection Error : 1 ,connect 172.16.17.4:4000 fail after 7.2382 seconds GatewayConnection Error : 1 ,connect 172.16.17.4:4004 fail after 7.2382 seconds GatewayConnection Error : 1 ,connect 172.16.17.4:4...
我使用阿里云服务器, Gateway和Worker是分布式部署再两台服务器中,流量入口是阿里LSB负载均衡。 最近再压测时发现: Gateway机器sendQ有大量堆积,但是堆积IP并不是Worker机器。也不是负载均衡入口机器。 Worker机器并没有什么堆积。 请问谁遇到过这种情况?这些IP都是干什么的?不压测的时候这些IP也没有堆积。...
我想给一批用户发数据,用户大约有1万左右。由于一些原因,不能使用分组。 请问 sendToUid() 和 getClientIdByUid() sendToClient() 哪个效率更高?...
我参考http://doc2.workerman.net/326160这个文档设置wss。 已经注册了免费证书,开放了4431端口。但是无法连接。 请问: 经过确认,4431端口已经开放,从外网telnet可以访问。确认不是防火墙问题。 但我的php版本是5.5,不清楚是不是这个原因。 我看手册说,如果是微信小程序连接,必须要求php5.6,请问仅是web浏览器连接,是否必须是php5.6版本吗? 请问wss连接失败...
文档地址: http://doc3.workerman.net/faq/secure-websocket-server.html 没看懂修改哪个文件~...
我使用workerman做了一个聊天室。 1. 我之前使用ajax轮询做的聊天室,在访问量大的情况下会挂掉。 我想知道workerman对于长轮询、短轮询来说,是否能有效减轻服务器压力? 2. 有一篇文章,我想直接推送所有内容(标题、时间、内容等),这样就不用去存储介质中读取数据了,节省了一次HTTP请求。可是这样会不会造成丢包现象或某个用户收不到的情况?? 还是说仅仅推送一个文章id,用户收到文章id后去数据库读取...