gatewayworker + webman 第二条message事件后session 为null

架构是gatewayworker + webman,bussiness进程放在webman里。逻辑是连接websocket的时候带上token,在onconnect事件根据token读取用户id,然后保存到session里,onmessage读取session里的用户id判断用户身份。本地websocket测试的时候 发送的第一个消息能获取到session,第二个和第三个获取不到,加上usleep后就可以了,或者连...

pengzhen 发表与 7天前 138 浏览 4 回答
gateway worker restart 会主动关闭客户端连接吗?

因为某些原因,每次改了代码,希望用restart,而不是用reload,所以使用了阿里云的alb作为负载均衡,alb支持优雅中断功能,就是后端服务出现异常,暂时不会中断与客户端的连接,但是刚才试了下,restart后,客户端立马中断了连接,是不是restart会主动关闭所有已连接的客户端...

pengzhen 发表与 18天前 118 浏览 1 回答
webman+gatewaywork ,php 8.3,安装了events扩展,处理请求是同步的吗

onmessage是一条消息一条消息处理的?哪怕第一条消息涉及到网络操作,也要等第一条消息执行完毕,第二条消息才会执行? 输出 连着发送 ...

pengzhen 发表与 23天前 328 浏览 4 回答
[已解决] websocket中context 保存的变量是针对进程的吗?

用的webman+GatewayWork,因为代码需要保存一些变量,用了context的,http下没有问题,但是用websocket发现,不同的message事件,获取的context里的值是一样的,要怎么改才能针对每个message...

pengzhen 发表与 24天前 179 浏览 1 回答
webman使用gateway-worker插件问题

webman使用gateway-worker插件,bussiness配置name不起作用,bussiness中异常无法通过config/exception.php配置的类捕获 进程名字还是 plugin.webman.gateway-worker.worker bussiness进程中的业务代码异常不能被config/exception.php...

pengzhen 发表与 2024-08-05 245 浏览 1 回答
使用ParallelClient报错

问题描述 这里详细描述问题 程序代码 $options = [ 'max_conn_per_addr' => 1000, // 每个域名最多维持多少并发连接 'keepalive_timeout' => 30, // 连接多长时间不通讯就关闭 'connect_timeout' => 30, // 连接超时时间 ...

pengzhen 发表与 2024-07-24 352 浏览 1 回答
webman有没有办法实现传统php-fpm下的静态类的功能?

因为有一些数据是跟请求绑定的,如果用传统的fpm,可以用静态类,继承父类来实现,协程可以用上下文来实现,但是webman就不知道怎么实现了...

pengzhen 发表与 2024-05-23 606 浏览 1 回答
想在中间件执行完毕后,在执行控制器里的某个方法,有办法吗?

现在是有个需求,需要某个中间件执行完毕后,再去删除一个锁,这个锁是加在某个用户上的...

pengzhen 发表与 2023-11-07 549 浏览 1 回答
webman reload是真的平滑重启吗?

在业务代码里写了sleep(10),请求后,看到浏览器是一直在转。然后修改代码,保存,webman会自动reload,可以看到请求立马结束了,没有在转了,这是不是说明reload后,原来的请求被暂停了?...

pengzhen 发表与 2023-11-04 848 浏览 1 回答
webman 里 $request 里得 connection 中得id 一直是1

在控制器中,获取当前请求的id,每次都是1,就算在同一个进程里也是1,workerman文档中不是写了,这个id会自增 吗 print_r($request ->connection ->id );...

pengzhen 发表与 2023-11-02 689 浏览 1 回答
想在webman中使用一个类缓存从数据库里查到得数据

为了方便,每次从数据库中查到得数据,都会存放在一个类得变量里,因为是游戏行业,所有得数据都是根据用户id查得,放在类得缓存里,这样业务复杂,不同得函数里都调方法查询数据时,不用每次查数据。但是这样一来,这个类就会占据很大得内存,目前想得是,请求结束后,就把当前请求设置得变量内容清除掉,不知道用什么方法...

pengzhen 发表与 2023-11-01 620 浏览 2 回答
一个客户端连接上后,后续所有请求是固定在一个bussiness worker进程处理吗

1、bussiness 开了8个进程,一台设备连接上后,发送了10多次消息,发现每次都是同一个进程在处理,这是因为正好如此还是workerman固定了一个连接建立后,后续消息都是同一个进程在处理 2、Gatewayworkderman分离部署,Gateway,bussiness 都可以部署多台,register能部署多台吗?如果部署多台,是不是会把Gateway bussiness 分割成多个集群...

pengzhen 发表与 2023-03-25 586 浏览 1 回答
gateway适合在k8s中运行吗

目前公司考虑上k8s,没有运维,开发去部署。目前我想到的上k8s的话,有以下问题 单台机器 pod不固定,workerman进程数量没办法设置 如果把代码放入镜像中,每次修改代码后需要更新镜像,这样应该是不能做到平滑重启...

pengzhen 发表与 2023-03-16 602 浏览 0 回答
Worker.php on line 770 报错

Trying to access array offset on value of type bool in file /var/www/workerman_gateway/vendor/workerman/workerman/Worker.php on line 770 项目运行在docker中,代码报错的地方是 $user_info = \posix_getpwuid(\posix_getuid()); ...

pengzhen 发表与 2023-03-09 856 浏览 1 回答
GlobalData increment的问题

在onmessage里,直接 self::$globaldata_worker ->increment( 'process_cnt', 1 ); 发现最后process_cnt这个值有问题,取出来的值是null,貌似需要初始化为0才行,但是这个初始化不知道在什么时候进行...

pengzhen 发表与 2023-03-01 549 浏览 1 回答
gateway的bussinesswork中onmessage获得message是请求头

gateway的bussinesswork中onmessage获得message是请求头,而不是客户端发送的信息 客户端 for( $i = 0;$i<=1;$i++ ){ $con = new AsyncTcpConnection('ws://x.x.x.x:8282'); $con ->onError = function(AsyncTcpConnection $con...

pengzhen 发表与 2023-03-01 791 浏览 1 回答
gatewayworker,我想在gateway那做个限制最多多少设备发起连接的功能

考虑到一个场景,当前有10万台设备连接,如果因为代码或者服务器原因,所有设备断开了连接,下次重启后,所有设备都会同时连上,因为连上后有些数据库和redis的操作,服务器完全抗不住。所以我想,如果一个gateway,同时有1000个正在发起连接,但是数据库和redis工作还没做完,后面设备发起连接时,直接拒绝这个请求。bussiness进程在处理完连接事件后,告诉gateway,gateway 就讲总的正在连接设备减1...

pengzhen 发表与 2023-02-25 843 浏览 2 回答
在gatewaywork的bussiness中使用redis-queue[已解决]

在gatewaywork的bussiness中使用redis-queue,onconnect时间中,给队列发送数据 /** * 当客户端连接时触发 * 如果业务不需此回调可以删除onConnect * * @param int $client_id 连接id */ public static function onConnect($client_id) ...

pengzhen 发表与 2023-02-24 829 浏览 2 回答
单机改成集群,能平滑重启实现吗

现在公司部署的gatewayworker在一台单机32核64g服务器上,现在要改成集群,看了文档,如果要改成集群,好像reload没用,要重新restart,文档写的是reload只对runall后面加载的文件有效。但是客户现在有10多万台设备在线,不想重新启动,因为重新启动会掉线。想问下有什么方案能改成集群,但是又不影响已经在线的设备...

pengzhen 发表与 2023-02-23 1826 浏览 1 回答

pengzhen

-170
积分
0
获赞数
0
粉丝数
2023-02-23 加入
×
🔝