workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
文档
getAllUidCount
getAllUidCount(void); ``` ``` (要求Gateway版本>=3.0.8) ``` [如何查看Gateway版本](get-gateway-version.md) 获取全局所有在线uid
数
量## 返回值
数
字 注意:如果是客户端断网断电等极端情况掉线,客户端的onClose回调可能无法及时触
发
,参见[onClose](on-close.md)说明。## 范例 ```php use \
GatewayWorker
\Lib\Gateway; class Events { ...:bindUid($client_id, 123); var_export(Gateway::getAllUidCount()); } ... } ``` 打印出的
数
据
类似如下
分享
从ThinkPHP6移植到Webman的一些技术和经验(干货)
、路由、中间键等 到
数
据
库、Redis的连接、使用释放 到 php-fpm释放资源、销毁所有类定义、实例、销毁符号表等 到 php-fpm将结果转
发
给nginx/apache 到 nginx/apache路由: a、TP的路由是一条条解析,匹配即
进
入,路由可重复定义;Webman稍有不同,定义时如果有相同路由,则控
制
台会报错无法启动服务(好处是及时能
发
现错误)。d、路由规则的第一个参
数
:Webman是 / 开头,而TP不是; e、TP的路由规则的第
二
个参
数
:TP是[控
制
器类, '方法'],TP是 字符串(包含目录、控
制
器名和方法)。f、都不匹配的路由:TP是route::miss,Webman是route::fallback; g、资源路由:第
二
个参
数
和 指定方法 稍有不同; h、TP的资源路由和Webman的资源路由名称对应,并调用构造函
数
;Webman可以在 config/app.php 中开启:'controller_reuse' => false,不推荐 action-hook 插件(有BUG); 附带我开
发
和移植的两个项目
问答
gatewayworker
两个不同app之间如何通讯
比如一个app是text协议 另一个app是wb协议 这两个app
gatewayworker
之间如何通讯?
问答
workerman业务子
进
程之间可以共享内存吗
现在打算用workerman框架做游戏 (不同于PHP,其它一些用C++或者JAVA写的游戏程序 基本都是把用户
数
据
放入内存 再定时同步到mysql或者redis等
数
据
库中 大大减少了IO) 不知道
问答
运行了,但有点问题,一、没有声音,
二
、只能看到本地视频,远程的看不到,请问是什么原因?
运行了,但有点问题,一、没有声音,
二
、只能看到本地视频,远程的看不到,请问是什么原因? php webrtc 关于这个帖子的问题:https://www.workerman.net/a/65
问答
webman大文件切片上传,很慢
### 问题描述 项目中需要上传视频,一个视频150M左右,直传基本上都是上传失败,所以改成了切片上传,一个切片2M,这样上传一个视频就得
发
70多个请求。业务中一般至少要同时上传3个视频左右,总共
发
送
的请求在200多,3个视频传完,总耗时基本在4分钟左右。合并第
二
个文件,116M  5. 合并第三个文件,152M !2163526bb70748.png "合并第三个文件") 服务器是8核16G,`config/server.php`中的`count`配置的是`cpu_count() * 2`,在上传文件时,我看了下服务器的负载,只有两个
进
程的尝试过增加单个切片的大小,从而减少请求的
数
量,但总耗时差不多 2.
问答
gateway onConnect 断开重连后,未按预期收到连接消息
( 红色划线部分,右侧为打印出的时间 ) 3-连接一段时间后,会收到连接信息 和 服务端
发
送
的心跳 ping(蓝色划线及以上) 消息中的client_id 是上一次的
数
据
,不是本次连接的client_id2-按图理解,是跟着心跳
发
送
的上一个onConnect消息,为啥重连后不是立马
发
送
onConnect 消息。3-为啥
发
送
的是上一条已经断开的client_id 配置: composer.json "webman/gateway-worker": "^1.0", 按文档自定义协议: return json_encode
问答
webman最近
发
现一个问题
我(webman开
发
的)系统是多用户的使用的,A用户在后台上传文件的时候(文件稍稍大有好几M),B用户此时访问任何其他页面都会觉得系统很卡,感觉是任何一个阻塞久点的
进
程
发
生了,整个系统就会其他
进
程也会伴生阻塞
问答
wokerman运行一段时间,php
进
程占用100%
strace
进
程后
发
现陷入死循环 [attach]1854[/attach] 这是什么原因造成的?
问答
大家有没有出现 偶尔响应慢的问题
没有业务逻辑 没有
数
据
库操作 没有redis操作 我开始以为是网络 或是 nginx 或是 浏览器 或是 mysql的问题 结果 curl 127.0.0.1:8787 还是卡顿 有时候需要等待20秒才能响应 情况是 : 第一次访问需要等待15秒 然后第
二
次 第三次 访问 就快了 等一段时间的第一次访问 又会慢 然后第
二
次 第三次 又会快起来 该访问只有这几行代码---------
问答
websocket
数
据
格式如何转换为socket
数
据
问答
webman 的 monitor
进
程内存监控平滑重启好像并不平滑?
#### 问题描述 查阅代码
发
现内存达到重启条件后执行了`posix_kill($pid, SIGINT);`,看起来并不是`平滑的重启`,随后我对这个猜想
进
行了验证 #### 复现环境 1、将重启内存阈值调低到`30M`(memory_limit) 2、将内存检测周期由原来的`60s`改为`10s` 3、程序内有意加载更多的文件,并存储于静态
数
组中 以上3点都是在原规则下,尽快和频繁的触
发
内存超限重启 #### 重现问题的步骤 1、直接在触
发
重启的位置来个输出  2、监控
进
程的内存使用情况来核对触
发
情况 !
问答
GatewayWorker
最新版会报错 event拓展实例EventBase不允许序列化
[](/upload/img/20250729/2968881ceaef65.png) EventBase instances are not serializable in
GatewayWorker
/vendor/workerman/gateway-worker/src/Protocols/GatewayProtocol.php:204
GatewayWorker
最新版会报错 php8所有版本都试了
问答
如何用php测试websocket的最大消息
发
送
量
已经用workerman 搭建好了,现在想往同事那边一次性
发
1000或2000+条的消息。要怎么测试,PHP单线程的。不知道怎么搞。。求大神教一下
问答
channel组件的多个
进
程,如何实现每个
进
程处理不同的用户产生的订阅事件?
设置了$worker->count = 4;每个worker都作为channel组件的client连接了server,都订阅了某个事件.每次publish事件时候,四个
进
程都响应了这个事件。我只想要一个
进
程响应该事件。多用户请求同时出
发
publish事件时候分给这四个
进
程分别去处理。
问答
如何
制
作只能给udp使用的协议
手册上在介绍自定义协议时没有介绍该协议是在tcp下使用的还是udp下使用的,而我在看内置的协议时,
发
现有的协议指定连接必须是tcp对象,有的是连接的抽象对象,有的没有指定,如图,从上到下依次是text,还是说无论协议如何定
制
,想实现tcp或者udp的指定,都必须用worker的transport属性指定.
问答
webman http-client用法
假设webman只能开一个
进
程 假设https://example.com的响应时间是1-10秒,可能根
据
传入的参
数
不同,响应时间也不同 ``` public function test(Request/$connection->send(new Chunk($response->getBody())); //$connection->send(new Chunk('')); //
发
送
空的的return代码应该是立即返回 // 如果是立即返回了,但是请求端希望拿到具体的响应结果,且不需要做额外的处理,就按正常的同步请求处理 } ``` 请问testAsync应该怎么处理可以达到增加并
发
,或者只能根
据
header设置的参
数
来额外处理
问答
关于pingData设置为空问题咨询
#### 问题描述 我使用TCP跟硬件连接
进
行交互,由于硬件那边说在连接时不能
发
送
pingData,以及硬件那边也不会给我
发
送
心跳包,所以我把pingData设置为空,我想问下pingData设置为空如果TCP长时间连接不
发
送
内容,服务器会自动断开连接吗 ``` 'gateway' => [ 'handler' => Gateway::class,
问答
make:controller如何生成多应用的控
制
器文件
make:controller如何生成多应用的控
制
器文件,如我们要生成 \plugin\fengu\app\admin\Indexcontroller.php 该怎么做?
问答
workerman启动时候 创建新的
进
程做定时器
开了4个
进
程 要在workerman启动时候 调用一次函
数
创建出新的
进
程 来做定时器 仅调用一次 现在在gateway那里调用 会执行4次
« 上一页
1
...
152
153
154
155
156
157
158
159
...
440
下一页 »
« 上一页
155
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝