workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
某个work进程连接
不
释放
#### 问题描述 运行一段时间后,某个进程的连接越来越多,
不
再释放,其他进程都是几十个连接,有个进程1000多个了,还在持续增加,而且实际上是没有这么多真实连接的,VIRT越来越多
不
释放 ##
问答
webman大文件切片上传,很慢
业
务
中一般至少要同时上传3个视频左右,总共发送的请求在200多,3个视频传完,总耗时基本在4分钟左右。`配置的是`cpu_count() * 2`,在上传文件时,我看了下服
务
器的负载,只有两个进程的cpu占用在2%多一点,其他的全是0。其他配置省略 } ``` PHP版本:8.0.22,已经开启opcache webman版本:1.4.8 ### 为此你搜索到了哪些方案及
不
适用的原因 1.尝试过增加单个切片的大小,从而减少请求的数量,但总耗时差
不
多 2.尝试增加`config/server.php`中的`count`的数量,感觉没
效
果 特来请教是配置
不
对,还是哪里有问题,上传很慢。 希望各位大佬多提建议,谢谢。
问答
你好,我遇到个两个worker之间通信的问题
\n"); ``` 作为服
务
器的监听5248端口,如果关闭服
务
器后,这个由于连接
不
上,弹出个warning `PHP Warning: stream_socket_client(): unableto connect to tcp://127.0.0.1:5248 (Connection refused)` 但是服
务
端重启后,虽然
不
弹出警告了,但服
务
端也收
不
到消息了,只有把作为客户端的重启。
分享
我用AI写了一个单机版本的GatewayWorker
(*13.65 MB*),运行时
不
依赖任何中间件,得益于go语言的goroutine和跨平台特性,性能出乎意料的好。`S` - Server 服
务
器端实现 开发过程就是AI对话,使用的阿里 `通义` 大模型。成品后,全部代码2500多行。 ## 核心功能特性 ### 1.WebSocket连接管理 - 支持WebSocket客户端连接和断开管理 - 自动
生
成客户端ID和认证信息 - 支持心跳检测机制(Ping/Pong) - 自动清理超时连接(45秒无心跳) ###监控和统计 - 服
务
运行状态监控 - 内存使用情况统计 - 在线客户端和用户统计 - 群组信息统计 - 健康检查接口 - 运行时信息查看 ### 9.Webhook通知 - 客户端绑定/解绑
事
件通知 - 用户上线/下线
事
件通知 - 心跳
事
件通知 - 可配置的Webhook超时和连接池 ### 11.
问答
nginx 反向代理 workerman的 websocket 一直连接
不
上
** 服
务
端代码是这么写的** ```php <?php include __DIR__ .wss"); ws.onopen = function() { alert("连接成功"); ws.send('tom'); alert("给服
务
端发送一个字符串:tom"); }; ws.onmessage = function(e) { alert("收到服
务
端的消息:" + e.data); }; ws.onerror
问答
功能建議。
就是在 GatewayProtocol 上多一個UIDs的Array屬性,傳Message 給 UIDs 這個Array的用戶,現在雖然可以利用,CMD_SEND_TO_ONE 去一個一個傳,但這樣好像沒
效
率
问答
多进程和全局变量的疑问
问题描述 1:关于全局变量 设置了 BusinessWorker->count=2,那么在1号BusinessWorker里定义的global $var 全局变量,在2号BusinessWorker里也有
效
吗
问答
聊天记录保存到数据库问题
用文件存储还是用redis存储
效
率高呢?
文档
构造函数
说明: ```php Worker::__construct([string $listen , array $context]) ``` 初始化一个Worker容器实例,可以设置容器的一些属性和
回
调接口## 参数 #### **``` $listen ```** (可选参数,
不
填写表示
不
监听任何端口) 如果有设置监听```$listen```参数,则会执行socket监听。ip,则外网用户无法访问 <本机ip>设置的值
不
属于本机ip则无法执行监听,并且提示```Cannot assign requested address```错误 **注意:**<端口号>
不
能大于65535Worker容器,用来处理一些定时任
务
```php use \Workerman\Worker; use \Workerman\Timer; require_once __DIR__ .,返
回
0继续等待数据 if($pos === false) { return 0; } // 查找到换行符,返
回
当前包的长度
问答
关全webman测压过
不
了1000的问题
#### 问题描述 宝塔面板,php7.4 在本机ab测压时能到1万并发,
不
开启keep-alive,开启后能达到8多万 但在局网的另一台电脑上远程测试,开启keep-alive能达到2万多并发,
不
开启keep-alive 最高只能到900多, 以前在局域网测试
不
开启keep-alive都能达到8千并发的, 现在centos7是重新装的,
不
知道问题出在哪里,求大佬给解答一下,event扩展也安装了的
问答
gatwayworker定时器问题
gatwayworker单独开一个进程来添加或删除定时器,所有业
务
需要添加定时器都请求到这个进程,我想知道的是如果同一秒定时器过多的话,单个进程能
不
能抗的住,定时任
务
是串行执行的吗?如果是串行的,
务
必会阻塞后面的任
务
,导致定时器
不
准,那么单进程同时能容纳多少个定时器任
务
?如果
不
行,是否有其它解决办法。我是用来做棋牌游戏的。
问答
https://bla.cn/ 清空cookie后忘记账户和密码了
但是有充值记录 可能帮忙找
回
下账户名称? https://bla.cn/ 清空cookie后忘记账户和密码了。 但是有充值记录 可能帮忙找
回
下账户名称?wx充值记录:商户单号: W2024011615352845025 交易单: 4200002081202401162473959867 找找
回
账户名就行,我知道密码
问答
webman-admin 后台,自定义业
务
功能上传excel,出错
#### 问题描述 参照了上传头像的代码, 修改了 acceptMime类型, 上传的接口也修改为了接收excel 的接口,
不
管我把上传的代码哪部分注释掉, 总会提示 "选择的图片中包含
不
支持的格式", 我一步步的调试,但这个错好像
不
会走我写的代码一样,但确实是在我写的页面里的, 以下代码中,只会打出'upload...'这个, 下面的 "done" 和 "error" 都
不
会出现,有懂的朋友可以指点一下吗?
问答
如何使用webman创建一个text/eventstream响应, 使服
务
端持续向客户端发送数据
#### 问题描述 #####如题, 最近看到一个Content-type类型:`text/eventstream`, 可以持续向客户端发送数据, 使用webman作为服
务
端应当如何实现?
问答
workerman重启后,之前的进程依然在执行onWorkerStart方法
因业
务
场景需求,我在workerman的
回
调方法onWorkerStart中,加入了定时工作内容(使用的workerman的Timer类),每隔20秒执行一次数据库操作 但是重启workerman后(php之前的进程会于数个小时后,才会自己注销并停止onWorkerStart的代码执行 因为目前2个方法同时执行会影响到数据内容,所以必须在重启时,强制删除前一个进程才能保证功能的正常运行,当前是找运维在服
务
器中强制删除前一个进程请大佬们
不
吝赐教,非常感谢
问答
GatewayWorker中globaldata经常报Connection refused
使用GlobalData经常报Connection refused,重启一下又能正常一下,但是过
不
了多久又会出现这个问题。而且,
不
知道怎么
回
事
,即使我重启后,在频繁的调用Events.php下在的onClose
回
调 ```php Warning: stream_socket_client(): unable to connect
问答
workerman\mqtt subscribe订阅问题
根据官方示例 在 onWorkerStart的
回
调中进行创建mqtt客户端,然后进行订阅 但官方是订阅一个topic 我现在的需求是以数组的方式进行多个topic订阅, 数组来源于数据库, 发现命令行运行之后,数据库订阅信息进行更新但是workerman创建的mqtt客户端里面订阅的仍然是之前的数据, 目前解决的办法是手动reload命令行, 请问官方人员和其他有经验的大佬,这个问题如何在
不
重启命令行的情况下进行处理也尝试过如下代码,但
不
知合
不
合理。希望官方给予
回
复。 !
问答
Webserver根目录设置在TP5的public 如何使用伪静态规则或者重定向访问TP5?
我用Webserver 指定的TP5 入口的话无法识处路由机制,
不
知道怎么设置伪静态机制或者重定向,使web访问可以返
回
需要的结果。
问答
gateway向硬件发送,第一次是成功的,第二次发送会自动断开(有检测心跳)
第一次发送成功的,硬件也能返
回
指令,但是当再次发送命令的时候,根据getClientIdByUid获取设备的uid却发现设备已断开(心跳检测是加了的),但是当差
不
多10秒后,设备又自动连上了,期间并没有触发
问答
求助WebSocket opening handshake timed out和dtruss跟踪
console.log('websockt连接已关闭'); }); socket.addEventListener('error', function(e) { alert("websockt连接发
生
错误; }); // 省略... ``` 3,后端我用的php的wokerman(一个php sokcet服
务
框架)提供的一个websocket服
务
用来测试(我目前做前端开发,用这个workerman只是用来测试socket服
务
,一直pending,直到提示:WebSocket opening handshake timed out。php代码或业
务
有问题。,
不
知道问题处出在哪里。
« 上一页
1
...
196
197
198
199
200
201
202
203
...
479
下一页 »
« 上一页
199
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝