GlobalData数据共享组件存储已连接的AsyncTcpConnection异步闭包对象

业务要求为防止主进程阻塞,将异步连接独立出另一个worker进程并使用GlobalData组件将异步连接对象存储起来,后续进行send操作指定指定该内存数据发送到该异步接口中; 但目前遇到了GlobalData组件无法存储的问题: “Exception: Serialization of 'Closure' is not allowed in E:\phpStudy\PHPTutorial\WWW\engineeri...

CNG 发表与 2020-10-20 2402 浏览 2 回答
GlobalData\Client 有没有遍历当前全局key数据的方法?

我建立很多这样的全局变量,我没有存储KEY,所有到后面变量多了,无法找到了。 想问问有没有什么方法可以遍历 KEY...

zhouaini528 发表与 2020-10-19 1442 浏览 1 回答
Channel组件并没有消息队列类型的代码

因为我这边要做对战游戏帧同步的服务器,使用了定时器做事件帧同步。 之前使用的方案是房主发起开启帧同步的事件,然后 BusinessWorker 开启毫秒定时器并将itmer_id记录erdis。 后来突然想到,如果房主掉线再恢复,导致redis记录的timer_id可能会失效(比如重连的时候 gateway 转发消息不再转发到上次在线时绑定的进程)最终导致无法停止帧同步时间。 然后我就想到使用channel,组件来隔...

nxfte 发表与 2020-10-19 2121 浏览 1 回答
Gateway报一个奇怪的错

2020-10-18 21:31:03 pid:4448 process_timeout: 1 /www/root/ese/vendor/workerman/workerman/Events/Select.php(261): pcntl_signal_dispatch() 2 /www/root/ese/vendor/workerman/workerman/Worker.php(2428): Workerman\Ev...

sanye 发表与 2020-10-18 2475 浏览 1 回答
GatewayWorker出现个无法复现奇怪的问题

GatewayWorker搭了个WebSocket,在start_gateway.php把客户端IP记录到了$_SESSION里面(获取不到有默认值),并且在onMessage把登录后的用户IP和设备信息写到了数据库,onMessage 、 onClose 都打了登录后用户日志,每天大概十万个登录的用户里面会出现10个左右在onMessage里面获取不到IP等情况,并且这些用户没有触发过onClose,通过客户端传来...

scan_z 发表与 2020-10-18 2053 浏览 3 回答
sudo php gateway.php start 启动后无响应

启动时无响应, root@lsy-PC:/home/wwwroot/wecharge-server# sudo php gateway.php start /home/wwwroot/wecharge-server/thinkphp/library/think/Debug.php:193: array(3) { [0] => string(39) "\app\gateway\controller\Ev...

leesaijyun 发表与 2020-10-17 2585 浏览 2 回答
webman中间件的问题

有配置全局中间件和多应用中间件,全局中间件全部会执行而多应用配置的中间件不会执行!当注释掉全局中间件时,应用配置的中间件会执行。请问webman这个中间件是设计如此吗? 中间件配置 return [ '' => [ support\middleware\AccessControl::class, ], 'api' => [ support\middl...

天若尘 发表与 2020-10-17 3514 浏览 1 回答
composer gatewayworker自定义协议报错

gatewayworker自定义通讯协议报错 报错信息: E:\Php\app_sms>php application\worker\start_register.php application\worker\start_gateway.php application\worker\start_businessworker.php ----------------------- WORKERMAN ------...

MicroStudio 发表与 2020-10-17 2979 浏览 2 回答
Workerman\Worker第813行出现语法错误

WorkerMan的4.0.12版本在Workerman\Worker第813行出现语法错误导致报错: static::safeEcho("Input \"php ".implode($argv, ' ')."\" to stop. Start success.\n\n"); 是不是应该改成: static::safeEcho("Input \"php ".implode(' ',$argv)."\" to stop...

qt510 发表与 2020-10-16 1561 浏览 1 回答
gatewayworker 在onmessage 里如何接受 applicaion/json 的数据

gatewayworker http 协议下 在onmessage 里如何接受 applicaion/json 的数据...

kkk123456 发表与 2020-10-16 1959 浏览 1 回答
请问服务器做帧同步保存帧数据globalData组件疑问

看了下globalData组件,在gateway里测试了下大概1秒可以写1000次。 代码片段,为什么感觉这么少呢? //... public static function onWorkerStart($businessWorker) { self::$g = new GlobalData\Client('127.0.0.1:2207'); //... case 'te...

nxfte 发表与 2020-10-15 2098 浏览 1 回答
frame not masked so close the connection

frame not masked so close the connection WebSocket connection to 'ws://47.90.15.220:2346/' failed: Error during WebSocket handshake: 'Connection' header value must contain 'Upgrade'...

imfutureman 发表与 2020-10-14 2034 浏览 2 回答
连接数也不多但是 就报这个错误,GatewayWorker

Notice: fwrite(): send of 8192 bytes failed with errno=11 Resource temporarily unavailable...

XCN 发表与 2020-10-13 1872 浏览 1 回答
启动了 Worker 之后可否再动态新增 worker 实例?

思路是这样的,首先启动了一个基于 unix domain socket 的 Worker, 这个 Worker 提供两个命令,add和stop , 然后由其它客户端连接到这个 socket 命令这个 worker 执行 add/stop , add 命令作用是想动态再新建一个 Worker 实例并运行起来,stop 命令作用是停掉指定 workername 的进程。这两个功能能实现吗,有没有相关的例子可以参考?...

cngzwing 发表与 2020-10-10 2682 浏览 1 回答
workerman 每天晚上1点多定时挂b

每天到了晚上1点多就48个BusinessWorker进程就都挂了,重启之后正常运行。已经优化linux内核以及安装libevent扩展。并且没有什么定时任务。日志在进程挂掉时也没提示错误。有没有大神解救一下。...

zilong0813 发表与 2020-10-06 1635 浏览 1 回答
多人正在单聊或者群聊时 发消息看不见

需要返回在进入单聊或者群聊才能看见自己发的消息。如果不返回需要等待1分钟甚至更久才能看到消息。...

qq13627515234 发表与 2020-10-06 1908 浏览 5 回答
为什么始终只有一个进程接收请求

我在使用过程中发现自己不管怎么试,所有请求都打在一个进程上面。 然后自己写了个简单的示例,使用 sleep() 阻塞住进程,哪怕其中一个进程阻塞了,其它的请求依然打在这个进程上面,其它进程全部旁观。 我知道浏览器会保持连接,于是我打开多个不同的浏览器,还是这样。 我使用 curl 命令试了还是这样。 示例代码: <?php use Workerman\Worker; require __DIR__.'/ve...

pader 发表与 2020-10-06 2497 浏览 5 回答
是不是必须要在Worker onXXX事件回调方法里才能新建立连接?

我的业务是用WS作为client端,我想在一个进程进行上成百上千的WS client连接, 但是这种连接是动态生成连接。根据文档案例如下代码: $worker = new Worker(); $worker->onWorkerStart = function() { $con = new AsyncTcpConnection("ws://echo.websocket.org:80"); } ...

zhouaini528 发表与 2020-09-30 2078 浏览 1 回答
phpsocket.io php7.4 停止失败

phpsocket.io php7.3的时候一切正常; 切换成7.4以后,消息收发正常; status、connections命令消息无任何显示; stop命令提示:stop fail。...

ijob 发表与 2020-09-30 2590 浏览 2 回答
status命令时,connections的值是不断增加。

Hi walkor, 最近发现了一个奇怪的现象,使用php start.php status命令查看信息时,connections的值是不断增加的,即每执行一下php start.php status命令后,查看到的connections值是不断增加的。不知道会达到什么值或过多久,再使用但使用php start.php status命令时,connections值会重置,然后继续增加,周而复始。但php start....

xiewen_kevin 发表与 2020-09-30 2145 浏览 2 回答

walkor

151351
积分
0
获赞数
0
粉丝数
2014-05-04 加入
×
🔝