workerman
首页
问答
分享
手册
市场
商业
客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
AI助手
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
php 调用一个 Worker的内部端口 要20秒才能返
回
状态
$connection) { $connection->send($data); } // 返
回
推送结果
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
分享
新年了给个福利给大家Sectigo SSL证书需要的来
活动期间:单域名 18 元 / 年、通配泛解析 180 元 / 年 有
效
期:有
效
时间 1 年赠 1 个月 活动截止:2024 年 2 月 24 日 22:00 优惠码:M6SMCX0R3P 签发网址:dvssl.top正品放心购买,
效
果可以看签发网站。
分享
Workerman 自定义的协议如何解决粘包拆包
经过打印日志发现,两端接收到的包都有出现
不
是
事
先约定好的格式,这也就是 TCP 的粘包拆包现象。这个的解决方法很简单,网上也有很多,但是这里是想用自己实现的协议解决,暂且放到后面来说。但是这个传递到 PHP 服
务
端接收时,字符串前 4 个字节就是显示
不
出来,用过很多方法进行转换都取
不
出来。Input 方法 在这个方法里,可以在服
务
端接收前对数据包进行解包,检查包长度,过滤等。返
回
0 就将数据包放入接收端的缓冲内继续等待,返
回
指定长度则表示取出缓冲区内长度。# 粘包拆包产
生
现象 由于 TCP 是基于流的,且因为是传输层,在上层的应用通过 socket 套接字 (理解为接口) 通信时,他
不
知道传递过来的数据包开头结尾在哪。拆包测试 拆包模拟只需要将一个数据包分成两次发送,看看服
务
端接收的时候能
不
能显示或者说能
不
能按约定好的格式正确显示。 !
问答
新手求助,稳定运行了22天的socket服
务
,突然连接
不
上(超时)
socket服
务
使用(gatewayWorker3.0.7), gatewatClient3.0.0 稳定运行了22天, 今天突然出现大面积连接超时的问题。
问答
gatewaywoker分布式部署?
现有AB两个站 在同一个服
务
器下 把gateway woker 部署到了A上 现在B可以与A连接握手成功 消息也可以发送过去 就是b接受
不
到a推送
回
来的消息 请问该怎么处理呢?
问答
怎么获取客户端真实IP?
php var_dump( $request->getRealIp(), $request->getRemoteIp(), $request->getClientIp() ); ``` #### 都
不
正确最后用了```php $region = explode(",",$request->header('x-forwarded-for')); var_dump($region[0]); ``` 宝塔服
务
器,在线等大佬
回
复
问答
Gateway::getAllClientIdList() 在服
务
异常时会报错
接口返
回
关键信息如下: { "msg": "foreach() argument must be of type array|object, bool given", "code": 500
问答
我被多线程逼疯了,我要发一次灌水贴,我
不
管,我要发
好吧,百度一把,加锁,然后各种加锁,无
效
。。。然后各种测试,发现只开一个进程没问题,然后知道了redis原子性的概念。 哎,
不
先解决redis原子性,加一万把锁都没用,真是头发掉了无数根。
问答
关于-webman,异步任
务
1.在swoole中,如果处理耗时等类似业
务
,可以将任
务
放入队列或者扔给taskWorker执行 2.在webman中,如果想执行类似业
务
,应该如何操作呢? 3.如果交给自定义进程,应该如何操作呢?
问答
一台服
务
器部署2个gatewayworker项目,出现SendBufferToWorker fail
一台服
务
器上部署2个
不
同的项目,
不
过这2个项目都使用GatewayWorker框架,2个项目同时启动时,就出现了BusinessWorker和Gateway之间的socket链接没有建立,如果单独启动一个项目就可以
问答
workerman restart这个功能是
不
是
不
起作用?
我把workerman 拿来当客户端使用,连接远程socket服
务
器,执行restart 好像只会关闭
不
会再开启。
问答
自定义协议长链接的问题
自定义了一个通讯协议,在Gateway中使用,但是发
生
一个问题,请指教: 看上去协议工作正常,而且相关消息处理过程也工作正常 客户端会
不
停的向服
务
器发送心跳包,较长一段时间后,出现了“failedto open stream: Too many open files ”的错误警告 此时只有一个连接的 没有数据库或其他缓存操作
不
知道,出现这种情况,我应该从什么地方开始找问题
问答
请问向uid发数据和向client_id发数据哪个快?
由于一些原因,
不
能使用分组。 请问 sendToUid() 和 getClientIdByUid() sendToClient() 哪个
效
率更高?
问答
webman是否有当前请求的全局缓存
.; } return self::$cache; } } ``` 业
务
逻辑判断当前模型缓存是否存在 如果存在则直接返
回
模型缓存
不
存在则从数据库或Redis中获取
不
用每次从Redis或数据库中获取因为是FPM模式 所以业
务
完成后静态变量自动清空
不
会相互影响 请问webman需要如何实现?
问答
创建tcp异步连接 发送send 是
不
是统一发送?
[](/upload/img/20211216/1661badaccf9e3.jpg) 我创建tcp后 里面循环发送某些指令, 想顺便send返
回
一些进度条的信息给前段, 但是我发现是统一返
回
的
问答
AsyncTcpConnection wss 报错 Sec-WebSocket-Accept not found 已解决 并提供思路
1、
务
必按照文档要求 把wss地址改成ws 2、加入以下配置 $con->transport = 'ssl'; $con->headers = [ 'Sec-WebSocket-Accept' =>SaVNe4xTuFTkmeH2VmfT9w==', 'Accept-Encoding'=>'gzip, deflate, br, zstd' ]; 3、Sec-Websocket-Key 值也可以自己百度
生
成
问答
多个客户端接入时,laravel数据库日志静态缓存问题
#### 问题描述 在使用webman时,如果A、B客户端同时发起请求,接口分别对应
生
成SQL_A1、SQL_A2和SQL_B1、SQL_B2每个请求
生
成2条SQL 现在我需要分别记录两个请求的SQL客户端的日志记录SQL_A1、SQL_A2,B客户端记录SQL_B1、SQL_B2 使用的是laravel orm,获取SQL的方法是在每个数据库操作后面执行下面的代码获取最后一行执行的SQL(因为有其他的业
务
,所以获取SQL的方案只能是在执行之后获取当前执行的SQL) $queryLog = Db::getQueryLog(); $log = end($queryLog); 那么在A、B同时并发时,会
不
会出现记录到A请求的SQL日志为 SQL_A1、SQL_B1这种错误的情况 如果会出现,能否避免这种情况发
生
,或者只能更换其他orm框架替代获取最后执行的SQL的方案,还是有其他更好的解决方案 请大佬指点一下
问答
webman多应用 控制器多层嵌套后beforAction会失
效
猜测是那个自动解析路由的官方说明有问题,目前找
不
到具体原因,顺带再问下,多层嵌套的控制器只能通过路由自动解析实现,那么怎么为
不
同的路由设定中间件呢 这个官方没有说明,是否跟正常控制器的那种路由一样的设置方法
« 上一页
1
...
101
102
103
104
105
106
107
108
...
459
下一页 »
« 上一页
104
下一页 »
赞助商
+成为赞助商
×
请作者喝咖啡
×
🔝