workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
两个workerman之间的
数
据
转
发
在本地内网部署一个workerman,同时在公网服务器部署一个workerman,想让内网的workerman监听到8080端口的信息往公网workerman8089端口转
发
,如何能做到呢?
问答
二
进
制
打包后运行报错 如何解决 ubuntu系统

问答
数
据
库访问时出错.
本地
数
据
库访问出错. 但好像这个提示太不友好. 弄了半天才知道原因.
问答
急,tp5.0怎么使用workerman后端推
送
消息到前端
小白一个,刚刚安装了workerman,前端推
送
数
据
没有问题,现在想tp的后端推
送
消息给指定用户,怎么推
送
呢?有没有源码参考一下,最好可以是tp的
问答
[已解决]如何对
数
据
进
行压缩输出
采用的是websocket 请问如何在输出给客户端前
进
行压缩呢?比如gzip压缩
问答
求助,多
进
程定时器+多
进
程异步,逻辑乱套了
进
程A和B都设置了5个子
进
程,
进
程A里放了一个定时器,同一时间去redis中查询5条
数
据
并立刻批量删除,然后调用AsyncTcpConnection执行
进
程B,redis是用的zset类型。问题: 1、redis虽然是单
进
程,但是因为5个定时器同时执行了
进
程A,导致redis还没删除之前,就被其他子
进
程也查询到了值,导致
进
程A有几率会执行2~3次,但我只想让
进
程A执行一次。我主要是想让5个
进
程争抢定时任务,比如其中2个
进
程阻塞了,其他3个
进
程还在跑,不会导致定时器延迟。 2、
进
程B中,同一子
进
程里,居然出现了
数
据
错乱问题,代码如下图。3、如果把
进
程A改成1个
进
程,上述1和2正常,但是
进
程B的count=5,却只能同时执行4次,可以确定不是因为
进
程A阻塞导致的。下图问题2,查询redis后修改并保存,保存的key居然不是查询的key,5条
数
据
会有两条
数
据
的key相互颠倒了。 !
问答
React 的 http-client 按 Workerman 文档里写的
发
送
请求无反应
EventLoop\Factory::create() 获取到的 $loop 再按 react 的文档里调用 $loop->run() 才正常,on('response') 和 on('error') 才能正确收到
数
据
另外为什么不改
进
下 AsyncTcpConnection 直接支持 http 协议呢?
问答
关于PHP源码加密的思路,不知道能不能行得通
魔改 `Phar` 扩展,把 `pubkey` 内置在扩展中,就是直接写死到扩展中,然后把 `Phar::extractTo` 之类的函
数
去掉,也就是说禁止直接解包 `Phar` 文件,同时要保证 `pubkey使用 `@crazywhalecc` 大佬的 https://github.com/crazywhalecc/static-php-cli 项目编译纯静态的 `PHP`
二
进
制
文件 4.使用一些加壳的工具给 `PHP`
二
进
制
文件加壳
问答
使用webman做短连接, gatewaywork长链接的一些问题
所以针对长链接还是想用gatewaywork 如果这样配合的话,业务也不想写在gatewaywork,准备gateway只做网关用,在gateway的worker只处理一下最初的鉴权,然后绑定分组 消息的
发
送
全部由webman使用gatewayclient来
进
行
发
送
,可能的流程会是这样 用户点了某个按钮,
发
齐http到webman,webman业务代码 第一种:里根
据
逻辑
发
送
了一个延时队列,然后webman httpresponse用户信息,过了一会,队列执行了,然后队列里面通过gatewayclient给用户
发
送
了一个消息,用户监听的websocket又收到了一条长链接信息 第
二
种:在业务代码直接调用gatewayclient给另一个用户
发
了一条推
送
消息,然后用户收到了自己的webman response 就是这种使用方式,会不会有什么坑 另外确认下 不管是 队列还是自定义
进
程,还是业务
进
程 reload都是安全的吧,都是执行完当前请求
问答
GatewayWorker
服务异常关闭
gatewayworker
什么情况下会导致服务关闭?我自己在事务处理里打印的一些
数
据
也没有看到有异常。
问答
$_SESSION覆盖存储是不是有问题?
."); Gateway::closeClient($client_id); return; } $_SESSION += 1; ``` 假如客户端连续
发
送
两条消息,第
二
条消息中的lastReceivedMsgId字段有几率会来不及更新的,取的是老的
数
据
,目前我们的解决方法是直接在
进
程中用clientId作为key值的
数
组去保存可以解决。
问答
chrome浏览器客户端,同时接收服务器200+的请求
数
,有没有压力呢
175f632f5e76e2.png) 做了个PC端的页面,作为客户端,手机端有个H5,也是作为客户端,手机端大概有200个用户同时在线,然后有一个摇一摇的功能,大家一起摇晃手机,然后手机把摇晃的次
数
同步
发
送
到服务端,服务端转
发
到PC客户端去 也就是说PC的网页有可能同一秒接收200+的请求 不知道这种作为浏览器单个客户端,能够同时接收这么大的
数
据
量吗,服务器我觉得同时接收200个请求
发
送
数
据
应该是没问题的,但是转
发
到这同一个客户端
问答
如何在指定时间推
送
消息到H5,然后关闭当前页面
#### 问题描述 目前使用的webman安装
gatewayworker
插件,已经实现websocket连接后主动向H5
发
送
消息 现在有个问题就是怎么在指定的时间去推
送
,需要及时性很高 例如:
发
布一个收集表,当结束时间到了,能主动
发
送
消息到H5关闭当前已经打开在收集表页面的用户页面(这个结束时间可能在一个月之后的某个时间) 目前想到的是 用定时任务每秒去查询结束时间是否超过当前时间,然后判断是否
发
送
消息
问答
关于worker的busy问题
我用
gatewayworker
做了一个客服系统,但是在使用中,经常会遇到 无法连接的问题。于是通过手册介绍的方法
进
行了调试。 
发
现有一个
进
程是busy然后能看到是
发
送
一个原子的 cas命令 !为了保证对
进
程之间的
数
据
的一致性,我采用了globaldata组件,并且为了保证操作的唯一性,我用了cas 操作。根
据
手册的写法 ```php do { $old_value = $new_value = $global->user_list; $new_value[] = 4; } while(!
问答
workerman配了ssl之后消息
发
送
失败
用了原生的workerman的配置方法,客户端那边连接成功了,但是
发
送
消息那个默认的2021端口访问不了,阿里的安全组端口放行了,端口也没被占用
问答
望各位大佬们给予思路【Spreadsheet】
#### 问题描述 比如一个订单表,要导出10W条
数
据
到Excel中,希望可以分批查询
数
据
,追加到Excel中。有没有实现的案列? 1 一次性加载10W甚至更多的
数
据
,可能内存回爆掉。2 不知道如何
进
行Excel的追加操作。比如 分批从
数
据
库中查询
数
据
,每次查询1W条
数
据
,我第一次查询1W条
数
据
,导出1.xlsx 文件中。然后再查询第
二
次1W条
数
据
,能否追加到 1.xlsx 中。
分享
php怎么跟硬件交互
统软云wifi墙壁开关,120一台,有一路
二
路三路的,分别可控
制
对应路
数
的灯光,同样可以连无线,可通过小程序和接口远程控
制
,订单到期后自动关闭,客人仍然可通过按下开关再次开灯,但1分钟后仍然后自动关闭,统软云wifi墙插,150一台,跟普通的墙壁插座外观上没有任何区别,但可以连无线,可通过接口和小程序远程控
制
,机麻、饮水机等电器插上面就可以远程控
制
其通电了; 先看官方文档: 消息推
送
【上行】 当设备状态
发
生变化时看了文档之后我们就会
发
现,有两方面需要处理: 1.设备的状态等变更是会通知给我们指定的地址,我们在指定的地址POST接受
数
据
然后做
数
据
处理就可以,所以这里就不细说了,如果有不清楚的可以参考官方文档2.控
制
设备下
发
指令,给设备下
发
指令控
制
设备,我们主要说一下这里。这里开始处理自己的应用逻辑*/ } ``` 其他的操作小伙伴们直接看文档吧,调用方式还是很简单,URL+自己的APPI_ID+签名sign+时间戳ts,然后注意是GET还是POST请求方式,然后把参
数
带
进
去就
问答
workmaner运行时连接
数
据
库失败的问题
workerman连接
数
据
库我写在了$worker->onWorkerStart中,应该
数
据
库与workerman没有在同一服务器上,在workerman运行时,如果
数
据
库连接失败了,怎么让他自动重连?
问答
GatewayWorker
stop报错
GatewayWorker
stop时 提示not run 但是所有的
进
程还在。是pid文件被删除造成的吗。怎么解决。哪位大老知道
文档
listen
需要注意的是用这种方法只是在当前
进
程增加监听,并不会动态创建新的
进
程,也不会触
发
onWorkerStart方法。可以做到接收http请求,然后操作websocket客户端完成向客户端推
送
数
据
类似的效果。 **注意:** 如果PHP版本<=7.0,则不支持在多个子
进
程中实例化相同端口的Worker。// 通过workerman,向uid的页面推
送
数
据
$ret = sendMessageByUid($uid, $buffer); // 返回推
送
结果($worker->uidConnections as $connection) { $connection->send($message); } } // 针对uid推
送
数
据
1); // 推
送
的
数
据
,包含uid字段,表示是给这个uid推
送
$data = array('uid'=>'uid1', 'percent'=>'88%'); //
发
送
数
据
,注意5678端口是Text
« 上一页
1
...
73
74
75
76
77
78
79
80
...
436
下一页 »
« 上一页
76
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝