workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
webman执行原
生
sql语句
webman有什么方法可以执行原
生
的sql吗,比方说我想检测数据表是否存在。
问答
怎么在服
务
端向wm推送消息呢?
例如我服
务
端用php写的网站当数据发
生
变化的时候我需要向wm服
务
器发送一条消息用于推送到其他的客户端,是使用原
生
的phpsocket来进行推送吗?有现成的类库吗? 谢谢。
问答
bsworker添加onWorkerReload,重建定时器
不
工作,求指点?
场景:系统运行依赖定时器,非硬依赖,restart会比较耗费时间,设备数量逐步增大的情况下,对业
务
产
生
影响的时间越来越长,项目又必须进行版本迭代,所以自己添加了onWorkerReload
回
调,在gatewayworkeronWorkerReload中重建定时器,但无法正常运行 问题现象:restart时定时器可以正常运行,reload后原有定时器丢失,在onWorkerReload中重建定时器,重建过程无报错,亦有ID返
回
,但是定时器并未工作,多次reload会一直返
回
同一个ID !
问答
workerman 后台启动后其他命令失
效
macOS Monterey PHP 版本:8.0.19 Workerman 版本:5.0.0(master) 相关描述: 使用 `php workerman.php start -d` 启动后命令失
效
。使用命令启动 Workerman 服
务
```bash php workerman.php start -d ``` ```bash Workerman[workerman.php] start in使用命令关闭 Workerman 服
务
```bash php workerman.php stop ``` ```bash Workerman[workerman.php] stop Workerman
问答
创建socket客户端连接,收
不
到服
务
端消息,请老大指点。。。
在虚拟机192.168.1.199中使用gatewayworker时创建TCP服
务
,如下图: !"\n"; }else { echo "发送到服
务
器信息成功!\n"; } while($out = socket_read($socket, 1024,PHP_NORMAL_READ)) { echo "接收服
务
器
回
传信息成功!\n"; socket_close($socket); 在虚拟机上的gatewayworker只写了简单的
回
复信息: public static function onMessage($client_id,问题好像出在while循环上,while换成if就能成功,
不
知道while循环好像变成了死循环,socket_read已经写了只读1024个字节啊,读完了
不
是应该跳出循环吗?
问答
Gateway worker :使用 stop 命令 无法正常触发Event::onclose
事
件
启动后假如有3个 websocket 连上了, 然后执行 `php start.php stop` 命令,或者使用`ctrl_+ c` 可能会未正常触发 `Event.php` 里的 `onClose`
事
件如果在 `onClose`
事
件中做清理工作,比如同步数据库中的 `client` 在线状态,下线账号什么的。。。 会有个别的或者全部的未正常执行。 请问,这种情况应该怎么处理
分享
分享:我开发的一个和jQuery具有一样语法的轻量、现代的
事
件处理的javascript库
just-event.js/actions/workflows/test.yml) --- 受[jQuery](https://github.com/jquery/jquery)启发的现代、轻量的
事
件工具如果你热衷于开发JavaScript插件,想摆脱jQuery,但也喜欢它对
事
件绑定的语法,那么这个库对你来说非常有用,这也是它的主要用例 ## 特性 - 零依赖,体积极小(gzipped: <= 2KB) -
事
件命名空间 - 批量绑定、解绑
事
件 - 轻松的
事
件委托 - 真实的DOM
事
件 ## 快速开始 ### NPM ```bash $ npm i -D just-event.js() | 阻止
事
件进一步传递 | | event.preventDefault() | event.preventDefault() | 阻止
事
件默认行为 委托 event(selector).one("click", ".foo", handler) ``` ### trigger 与`jQuery(selector).trigger()`有所
不
同
问答
gatewayworker 有时
不
主动发ping 为什么
'{"type":"ping"}'; //无反应断开次数 $device_gateway->pingNotResponseLimit = 5; ``` 这是我设置的心跳检测, 设备端是收到ping后返
回
pang但是**有时**(大部分时候正常,服
务
器也未动过任何改动及操作)服
务
器端
不
主动发ping给设备,设备就
不
返
回
pang给服
务
器,造成设备**被**服
务
器断开连接。为什么服
务
器
不
发送ping,怎么解决这个
不
发送的问题?
问答
@walkor,webman考虑做一个类似uniapp这样的插件市场
不
这样
不
管是对插件市场或者创作者来说都是一件好
事
,有收益自然就会有人制作各种插件,而确实需要某些功能的人来说,也
不
会说
不
舍得花一点钱购买插件,毕竟如果让他自己开发,成本可能是购买插件数十倍.当然,产
生
这种想法的原因很简单,我想挣钱,毕竟这东西
不
能光靠用爱来发电.
问答
如何使用workerman实现多进程主动轮询外部服
务
器?
其中的多进程优势、异步IO、定时器和libevent
事
件轮询库、支持高并发等特性,让我眼前为之一亮.我看了手册和demo,在做服
务
器方面已经提供了很好地实例和说明,可我目前遇到一个需求:将php服
务
器模拟客户端对外部服
务
器进行主动轮询.子进程也需要长时间存在,定时轮询URL对应的服
务
器取
回
数据. 子进程一旦取
回
所需要的数据,将结果保存到数据库,自我结束(或被主进程关闭).ps: 楼主从
事
iOS客户端开发,刚接触PHP几天,正在努力学习中,无奈项目期限太紧,苦思无果,前来宝地求助,希望能帮忙提供思路或给出简单demo. 再次感谢walkor大大和热心的朋友们.
问答
PHPSocketIO
不
工作,emit没有作用
之前一直是好的,某一天我忘了干了什么,突然就
不
行了。我比较了vendor/workerman下所有文件以及node_modules/socket_io下所有文件,发现文件没有变化。SocketIO.on('connection')
回
调函数如下: function(Socket $client) { Worker::safeEcho("Client connectedEIO=3&transport=polling&t=O5t2B5k 服
务
端正确返
回
sid等信息 第二次带上sid,再请求 http://192.168.1.83:8026/socket.io/?,触发disconnect
事
件。$this->_isPaused) 这个循环中一直没有返
回
。第一次带上upgrade之后,没有第二次处理了。 服
务
端代码 while ($this->_recvBuffer !== '' && !
分享
使用携程让webman-shared-cache缓存过期立即
生
效
只能手动删了 有2种方法 1.创建后使用队列去删 (我懒
不
想搞的太复杂) 2.用携程去删代码如下 Coroutine::create(function () use ($result) {
问答
异步TCP消息
回
调
好像有类似的问题,但搜索也找
不
到了,请wolker再解答下,谢谢 用的GatewayWorker,开了4个TCP网关,1和websocket网关,8个worker进程,其中ID=0的worker进程打开AsyncTcpConnection异步TCP接收其他服
务
器的TCP数据,那么问题是ID=0的worker进程收到的onMessage
回
调总是来源于同一个网关进程吗?还有一个是Register进程
不
是应该很少的请求量吗,Register有很多的total_request是否说明内部通讯
不
畅,或者频繁掉线导致worker或者gateway向Register连接寻找对方的地址
问答
webman+gateway设备数据返
回
丢失
#### 问题描述 与硬件设备通信,设备登录成功定时批量发送指令,业
务
逻辑都是推送到队列处理,按理
不
存在处理延时问题,但是总有个别指令发送过去没有收到响应,
不
知如何定位问题,使用的都是最新版安装包[截图](/upload/img/20231025/256538d25ceb4c.png) 使用这种调试工具可以正常返
回
问答
关于一个进程的问题,我
不
是很明白,求解答。
我在做毕业设计实现扫码登录的时候使用到这个框架,但是有一
事
不
是很明白。比如在电脑端打开了websocket连接,这个框架返
回
一个进程id,接到id后,异步交给thinkphp动态
生
成一个包含进程id及验证的的二维码,手机扫码,如果点击页面上的确定就会发送数据(包括了进程id我想问一下当刷新页面时,能
不
能
不
分配一个新的进程id而继续用原来的进程id,或者说有什么解决办法吗?
问答
webman框架下,在new Crontab的
回
调函数里能发送成功数据,但fread接收
不
到结果。
\n"); // 读取推送结果 echo fread($client, 8192); }); 通过日志分析调用fwrite能成功发送数据,在127.0.0.1服
务
端onMessage
回
调里也能正常接收到数据,调用$connection->send("hello\n");的返
回
值为true,那表示数据已经成功写入到该连接的操作系统层的socket发送缓冲区,但fread接收
不
到结果。
不
知道什么原因,求解。
问答
如何异步执行任
务
最近打算搞一个消息队列服
务
,有两个角色:
生
产者和消费者,
生
产者向消息队列添加任
务
,消费者负责从消息队列取任
务
并执行任
务
。 消费者取到任
务
开始执行任
务
后,如果执行时间超过了一个值,消息队列服
务
就会向消费者发送停止任
务
的消息。 但是由于是阻塞执行,消费者无法在执行过程中接收到停止任
务
的消息。 看了一下文档提供的异步执行任
务
的例子,似乎执行任
务
这块也是阻塞执行的,只是把它从主业
务
中剥离出来了而已。 有人知道什么方法可以异步执行任
务
的时候也能够接收到停止任
务
的消息吗?
问答
在自定义进程中获取
不
到远程设备的IP
"\n"; } 自定义进程,在onConnect
事
件里面,使用$connection->getRemoteIp(),获取到的确是本机服
务
器的IP,而
不
是远程设备的IP,请问是什么情况?
问答
发现大量用户触发onclose方法,这是怎么
回
事
?
做了一个聊天系统,客户反应有时会出现接收
不
到消息的问题。 然后我发现有大量用户
不
知道为什么会触发workerman的onclose方法,几乎每秒都有触发onclose方法的。系统是web版,包括微信网页和pc网页,用户可能自己退出,但也
不
应该出现大量的onclose触发,而且每秒都有!系统最初
不
是我开发,发现代码里是后端进行心跳检测的,onclose方法里调用Gateway::sendToAll() 发送下图的消息 !
问答
ThinkPHP 调用workerman RPC服
务
超时
这期间重启过服
务
器。 1,数据库mysql正常 2,redis正常 3,thinkphp的后台访问正常。 4,workman-json-rpc启动正常,状态如图:  5,Thinkphp调用服
务
代码如下 ```php /** * 用户注册 */request); } catch(Exception $e) { $array = format_return_array(400, '注册发
生
异常'); } } // 结果返
回
echo $array; } ```
« 上一页
1
...
26
27
28
29
30
31
32
33
...
459
下一页 »
« 上一页
29
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝