workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
守护模式,子线程一个崩溃会导致所有线程都崩溃、重启吗?
一旦用户开启自己的任务,就会在一定条件下触
发
任务的执行处理,触
发
任务需要处理时,★任务监控器★是不执行任务处理的,它会把
数
据
发
送
给【任务处理器】去处理。,$at = new AsyncTcpConnection(),$at->send()
数
据
给【任务处理器】,redis统计线程使用+1 【任务处理器】处理完,send()任务完成字符通知$at,$at-但
发
现【任务处理器】
发
生错误(原因未知,找不出来,workerman的日志里没有报错,我自己的日志里也没有报错),这个先不管,就是【任务处理器】
发
生错误后(跑了十几个小时后出现),redis统计线程使用不会-1,在高并
发
的时候,redis统计线程使用
数
量马上就上去了。但现在的这种情况,是不是意味着:一旦【任务处理器】的300个子线程里只要有一个子线程
发
生崩溃,就会导致300个子线程全部崩溃或者处理不了任务?然后守护
进
程是会自动把【任务处理器】重启继续跑?
问答
不同worker对象之间可以通讯吗
0.0.0.0:2000"); 最后运行 Worker::runAll(); ,分别用浏览器和tcp 客户端都可以连接,但是这两个之间可以互相通讯吗,如何实现, 比如 我在ws_worker onMessge函
数
里接收到浏览器
发
来的
数
据
,这个时候 用全局的 $tcp_worker看 里面的connections是空的,但是用tcp客户端给服务器
发
数
据
全局的 $tcp_worker看 里面的connections是有连接的
问答
workerman单
进
程理论上最大支持多少客户端连接
workerman单
进
程理论上最大支持多少客户端连接,我用自带的workerman-bench测试过得到的是吞吐量,但是我怎么计算出同时支持多少客户端连接
数
,还是说这个和linux系统有关,本人刚刚接触这一块
问答
workerman系统负载三个
数
分别代表什么
调workerman的时候偶然
发
现系统负载这么这么高!手册没仔细讲,想知道这三个
数
分别代表什么???
问答
webmanQQ频道+webman
二
群
webman1群满了,新开了一个2群,欢迎加入  另外webman开通了QQ频道,欢迎加入 
分享
简单几步,构建自己的php静态可执行文件
- 自己编译php静态文件目的 1.定
制
自己需要的php扩展 2.修改php配置,如memory_limit的大小 - 编译环境: Ubuntu 18.04.3 LTS - 参考文档: https:[截图](/upload/img/20231217/17657ed31502ce.png) - 步骤
二
下载static-php-cli 可执行文件,根
据
编译平台下载不同的文件,我这里下载的是`spc-linux-x86home/root/custom_complie_php/目录下 下载地址:https://dl.static-php.dev/static-php-cli/spc-bin/nightly/ - 步骤三
进
入/home/root/custom_complie_php/目录,使用`spc-linux-x86_64` 执行编译命令 ```shell # 检查环境依赖,并根
据
提示的命令安装缺失的编译工具 $ .
问答
GatewayWorker
因为businessworker内存不断增高,想达到一定请求后重启
GatewayWorker
因为businessworker内存不断增高,想达到一定请求后重启 1、如果用Worker::stopAll()会导致这个worker后续消息接收丢失吗?
问答
通过信号启动workerman状态
#### 问题描述 我想实现就是在页面获取到 workerman
进
程的一些信息,也就是 命令行 ``` php start.php status ``` 的结果展示。## 我的代码 页面入口 ```php public function info() { $data = []; //获取
进
程pid $filesswitch ($message_data['type']) { //服务状态监控 case 'server_monitor': //
发
送
getAllClientSessions(); $to_client_info['online_user_info'] = $client_info; //
发
送
给客户端
问答
GatewayClient 和
GatewayWorker
不在同一台机器,配置问题
#### 问题描述 如题,
GatewayWorker
服务 本机内网ip为192.168.0.1 ,启动环境为windows,GatewayClient 本机内网ip为192.168.0.10, 按照官方文档
问答
workman
进
程重启后的问题
```php $worker->onMessage = function ($connection, $request){ //设置单
进
程请求量达到额定时重启,防止代码写得不好产生OOMWorkerman\Events\Swoole'; Worker::runAll(); ``` 参照手册 https://www.kancloud.cn/walkor/workerman/806687 给
进
程处理一定请求后重启当前
进
程,以上代码,
进
程重启后,无法再接收请求。
问答
gatewayworker
中的默认项目名YourApp如何改成别的?直接文件夹名会导致无法启动
gatewayworker
中的默认项目名YourApp如何改成别的?直接文件夹名会导致无法启动, 我尝试修改了YourApp为别的,导致无法启动
问答
分享一个基于workerman的rabbitmq客户端生产者、消费者(基于Timer实现事件驱动)
Connection\AsyncUdpConnection; use Workerman\Connection\AsyncTcpConnection; $worker = new Worker(); //开启
进
程
数
量,经过json转换再
发
送
$data_all = array( 'name' => "张三", 'time' => time(),Connection\AsyncUdpConnection; use Workerman\Connection\AsyncTcpConnection; $worker = new Worker(); //开启
进
程
数
量,每个
进
程每秒消费1000条,4个
进
程每秒消费4000条,经过实际验证,将时间改小也无法提升单个
进
程的处理速度 //实际测试,4个
进
程每秒的消费能力有4000左右,可以满足很多中小型系统的应用,如果想提升系统处理能力, //可以增加消费者
进
程
数
量来解决,比如我将
进
程
数
量提升到10个,每秒处理能力约为1万 //这个机
制
,希望能力更强的你来
进
行优化 Timer::add(
分享
webman 聊天室demo(ctrl+c && ctrl+v)
开启前端路由 ### 4.下载官方聊天室demo ```php https://www.workerman.net/doc/gateway-worker/ ``` ### 5.前端页面代码,复
制
静态文件放到}; ws.onerror = function() { console.log("出现错误"); }; } // 连接建立时
发
送
登录信息client_name":"'+name.replace(/"/g, '\\"')+'","room_id":'+room_id+'}'; console.log("websocket握手成功,
发
送
登录
数
据
\n"; // 客户端传递的是json
数
据
$message_data = json_decode($message, true); if; Gateway::joinGroup($client_id, $room_id); // 给当前用户
发
送
用户列表
分享
关于使用pgsql+swoole时会出现exit with status 9
我用Mac做为开
发
机,使用PHP8.3+webman 开启了'eventLoop' => Workerman\Events\Swoole::class
数
据
库使用pgsql18 在开
发
过程中,多次出现exit with status 9、exit with status 11 的问题,经过在论坛里面的查询摸索,最后结合AI,终于找到问题根源在于PG默认会使用 Kerberos/GSS 认证方式
进
行连接,但我们用 Illuminate 的 PG 配置没有暴露 gssencmode 这个 libpq 参
数
,所以就造成系统会不断的尝试重新连接,所以会造成不断的报错。
问答
使用GatewayClient能否判断client_id是否已经绑定,安卓跨域不能存session
框架用的ThinkPHP,然后使用GatewayClient实现聊天功能,也是使用官方推荐的方式连接
GatewayWorker
需求是防止安卓客户端伪造一个在线的client_id而能够参与其中的群聊,这样的话我需要在使用bindUid之前判断一下client_id是否被绑定过,如果被绑定过就不再绑定提示错误,因为是移动端主动访问存在跨域问题应该是存不了session这种不可伪造的
数
据
。
问答
同一台服务器 rpc通过jsonNL方式,开启2个
进
程,一个
进
程通过tcp调用另外个
进
程。很高的概率卡死,出现busy
同一台服务器 rpc通过jsonNL方式内部调用,开启2个
进
程,一个
进
程通过tcp调用另外个
进
程。很高的概率卡死,出现busy。
问答
workerman
发
送
yii\base\ErrorException: fwrite(): send of 8192 bytes failed
yii\base\ErrorException: fwrite(): send of 8192 bytes failed with errno=11 Resource temporarily unavailable in /www/wwwroot/我使用的方法是
问答
workerman多
进
程到底是怎么用的?
开启多
进
程后,要拆分逻辑吗? 比如我要写一个定时器对所有连接
进
行处理,如果多
进
程,总感觉会在所有
进
程里执行一遍,然后就重复执行了。 或者应该不在workerstart而在其他地方写吗?
问答
关于自定义
进
程的疑问
自定义
进
程中的自定义监听例子这个该如何
进
行测试呀
问答
为什么在手册下载的
GatewayWorker
win版本演示代码 里面没有 Gateway::getUidListByGroup 等好几个方法?
为什么在手册下载的
GatewayWorker
win版本演示代码 里面没有 Gateway::getUidListByGroup 等好几个方法?
« 上一页
1
...
198
199
200
201
202
203
204
205
...
451
下一页 »
« 上一页
201
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝