workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
GatewayWorker仍在了tp5框架无法在服
务
器启动,新手求大佬指导
 求大佬帮个忙
分享
一句命令自动安装PHP+Composer环境
### 一句命令自动安装PHP+Composer 地址 https://www.workerman.net/download (同时提供各个操作系统的静态PHP文件下载) ### 场景 新服
务
器需要快速安装PHP和Composer环境 ### 特点 * 可选择PHP版本 (8.0-8.3) * 支持Linux系统和MacOS系统(
不
支持windows系统,windows可自行手动下载静态PHP压缩包)* 自动识别处理器架构(x86_64和aarch64) * 包含大多数常用扩展 * 静态PHP,
不
依赖系统环境 * 绿色,卸载只需要删除 `/usr/local/bin/php` 和 `/usr/local
问答
如何判断某些数据是否还在队列中?
,'xx'=>'yy'], ['id'=>5,'uuid'=>'cccc--xxx','xx'=>'yy'], 以uuid为单位一组一组的数据,我想判断我指定的uuid是否已经执行完毕,因为后面的业
务
是当一组的数据处理完毕后#### 为此你搜索到了哪些方案及
不
适用的原因 目前想到的是启动一个定时器去轮训 aaaa bbbb cccc 这三组是否已经完毕,完毕后会打上标志,进行后续的操作。现在的问题是,
不
知道如何判断 指定的组是否在队列中已经处理完毕了。 有没有遇到类似问题的朋友。谢谢。
问答
在php-fpm环境(非workerman环境)内,如何创建常驻内存的定时器
在一个PHP-FPM项目中,需要使用一个定时器,每10秒执行一些任
务
2.写了一个PHP脚本,在终端执行,关闭终端后,就
不
再执行了 3. workerman的timer似乎只能在workerman环境中使用 #### 为此你搜索到了哪些方案及
不
适用的原因 目前我的做法是
问答
workerman/http-client
异步的http请求数多了后,服
务
器会卡住
文档
通用接口
static function access(string $controller, string $action) {} /** * 判断是否有权限访问某个控制器和方法,有权限返
回
true,无权限返
回
false * @param string $controller * @param string $action * @param int $code} return $response; } } ``` > **提示** > 如果此中间件无法满足开发者需求,开发者可以在自己的项目中实现自己的鉴权中间件,
不
一定强制用此鉴权中间件
问答
webman+GatewayWorker搭建聊天室很多1006错误
服
务
器使用的宝塔9.5.0,ssl使用的是: Encryption Everywhere DV TLS CA - G2 .
回
复前端连接成功 send($client_id, MsgType::LOGIN, $request_id, '连接成功', ['client_id' => $client_idLog::error("用户加入房间失败:{$room_id}"); } #
回
复} else { Log::error("用户离开房间失败:{$room_id}"); } #
回
复null; //todo 这里使用 Gateway::getUidByClientId() 是获取
不
到uid的,所以只能使用session if ($userId) {
文档
静态文件
> **注意** > 以`/app/xx/文件名`开头的静态文件访问实际是访问应用插件的`public`目录,也就是说
不
支持 `{主项目目录}/public/app/`下的目录访问。/plugin/app.md) ## 关闭静态文件支持 如果
不
需要静态文件支持,打开`config/static.php`将`enable`选项改成false。关闭后所有静态文件的访问会返
回
404。 ## 更改静态文件目录 webman默认使用public目录为静态文件目录。
问答
用workerman官网下载的静态php,无法连接sqlserver,用自己安装的php正常。
同样的代码,在同一台服
务
器上,使用系统安装的php start.php start 运行webman ,可以正常连接到数据库,使用官网下载的静态二进制php运行 .总结:同样的代码在同样的环境下,连接同一个sqlver数据库, 只要是官网下载的二进制php启动就会报错,自己安装的就
不
会, 搞
不
懂哪个环节
不
对, 老铁帮忙指导一下 #### 操作系统及workerman
分享
Webman使用redis集群教程
安装docker** ``` apt-get install docker.io ``` 提示:有些系统安装docker后需要手动启动docker,启动命令
不
同系统可能
不
同 **2.[截图](/upload/img/20231028/28653cb99dde7a.png) 提示:如果是多服
务
器部署,那么127.0.0.1改成每个服
务
器的内网ip **6.clusters' => [ 'default' => [ [ 'host' => '127.0.0.1', // 如果
不
是本机using any provided seed`,有以下原因 * redis集群没配置成功 * redis集群没启动 * config/redis.php 配置的ip或端口是错的 * 连的redis
不
是比如连的是一个普通redis实例 查看redis cluster集群配置是否正确可以运行命令 `redis-cli --cluster check 127.0.0.1:6381` 查看 (如果redis集群
不
是本机需要把
问答
问下为啥我用pm2启动Workerman的Gateway启动失败?
#### 问题描述 这里详细描述问题 情况是这样的,我的服
务
器系统是windows10.然后我想能让程序能后台运行,
不
要出现命令行窗口,我试着下载Gateway的demo,然后点击start_for_win.bat, 这时候是可以使用的,但是会出现一个命令行窗口,当我关闭命令行窗口时候就
不
能使用了。后面我想通过PM2来管理进程,让进程能自动重启,启动
不
起来 我想问的是如何能
不
要出现cmd命令行的后台运行,主要是我担心服
务
器上后期会将命令行窗口关掉 #### 程序代码 ``` laravel框架里面的Worker::runAll(); return; } /** * argv[0] 默认是,当前文件,可以
不
修改
问答
GatewayWorker 中如何 给作为客户端的AsyncTcpConnection 发送信息
系统:windows 7 X86 php:php-5.5.38 for win workerman:3.5.11 详细情况: 我本地有使用gatewayworker 对外提供websocket服
务
,并且 新开了一个 worker 使用AsyncTcpConnection 作为客户端来连接远端的服
务
AsyncTcpConnection 里面是可以通过gatewayclient 发送信息到 gateway
问答
关于workman 平滑重启的疑问
reload -g 有什么区别 为什么reload -g 后查看status 进程号都变了 但是onMessage里的代码并没有更新 问题2 请求链接时 sleep(5) 这时reload 为什么没等任
务
处理完就断开链接了如果加上-g参数 就会等到任
务
执行完
问答
请教ws断开后redis链接如何删除?
使用workerman实现了websocket服
务
端 业
务
中使用了 use Workerman\RedisQueue\Client; 在onClose内部关闭connection ```php $ws
问答
BusinessWorker进程 数据库连接报错
#### 问题描述 使用gatewaywork和tp5.0创建tcp服
务
,BusinessWorker进程设置为1没问题,只要大于1,如果进行数据库查询就连接报连接错误 Wrong COM_STMT_PREPARE这两种错误 使用自带thinkorm,但是放其他服
务
器又可以正常运行
问答
gateway中Websocket转发消息给Tcp
#### 问题描述 问题在gateway中onMessage中使用$worker能发送消息到TCP服
务
吗? 求思路 这里写问题具体描述 webSocket相关代码  TCP服
务
相关代码 这里使用了自定义进程 !
问答
Warning: system call select exceeded the maximum number of connections 256.
只能重启服
务
?
问答
给对方发送聊天信息失败
www.workerman.net/ * @license http://www.opensource.org/licenses/mit-license.php MIT License */ /** * 用于检测业
务
代码死循环或者长时间阻塞等问题* 如果发现业
务
卡死,可以将下面declare打开(去掉//注释),并执行php start.php reload * 然后观察一段时间workerman.log看是否有process_timeout"function/chat.php"; /** * 主逻辑 * 主要是处理 onConnect onMessage onClose 三个方法 * onConnect 和 onClose 如果
不
需要可以
不
用实现并删除); self::$chat= new chat(self::$db,self::$user); } /** * 当客户端连接时触发 * 如果业
务
不
需此
回
调可以删除
问答
Gateway::bindUid($client_id, $uid)异步绑定提示500错误
: e.data}, function(data){alert(data);}, 'text'); 异步调用绑定本地身份uid提示500错误,但是直接http网址访问绑定文件是可以的,这是什么问题 服
务
端使用require_once 'Gateway.php'; // GatewayClient 3.0.0版本开始要使用命名空间 use GatewayClient\Gateway; // 设置GatewayWorker服
务
的Register服
务
ip和端口,请根据实际情况改成实际值 Gateway::$registerAddress = '127.0.0.1:1238'; $client_id=$_REQUEST; // 假设用户已经登录
问答
PHP+gateway,咨询一个做物联网硬件控制的思路
mongdb 2.后台设备绑定了对应的传感器 3.后台给设备执行设置了条件,存到mysql 4.现在是想,通过设置的执行条件和传感器处理后的数据作比较,如果达到执行条件,给对应的设备发送开关指令 5.定时任
务
中循环条件和数据比较->有达到执行条件->连接gateway服
务
器->绑定->服
务
器向指定设备发送开关指令,这个流程要怎么实现呀,希望大神们能给点实现思路
« 上一页
1
...
306
307
308
309
310
311
312
313
...
461
下一页 »
« 上一页
309
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝