workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
文档
unbindUid
注意:当client_id下线(连接断开)时会自动与uid解绑,开发者无需在onClose
事
件调用Gateway::unbindUid。### 返
回
值 无返
回
值 ## 范例 ```php use \GatewayWorker\Lib\Gateway; class Events { ...
分享
workerman 4.1.13 onclose失
效
在php7.4环境下,workerman 4.1.13版本,在workerman 关闭时,
不
会执行Event文件的OnClose函数,通过修改Worker.php 的stopAll函数(1964行),$
问答
Webman AI接入公众号
#### 问题描述 我这边想接到公众号里关键字
回
复,我目前公众号在另外一台服
务
器上,想将这个ai
回
复和公众号的关键字
回
复对接起来,用户向公众号发送提问,我这边将消息转发到AI服
务
器,获取到AI的
回
复,然后将
回
复在转发到公众号服
务
器,这种逻辑
不
知道在这个上面怎么实现
问答
请问workerman v5是
不
是要和v4分道了?
看到文档里面介绍的:workerman是多进程+Epoll+非阻塞IO 但是workerman v5里面包含了revolt.php,可以实现异步的mysql redis等操作 是
不
是之前的epoll
不
兼容
不
兼容这些?既然已经引用进来了,要大改,可
不
可以推出一个v4的稳定版长期维护 然后v5 专注这个
事
件循环库,可以直接引用一些已经有的mysql redis异步库,让大家让大家先用起来,再慢慢打磨提示性能?
问答
有webman监听redis过期
事
件的demo么
需要监听redis过期后,处理其他业
务
。没有找相关信息
问答
GatewayWorker - exit with status 11,应该如何排查呢?
2017-11-16 09:17:43 pid:22974 worker exit with status 11 根据之前的
回
答。> exit with status 11 是发
生
了coredump。发
生
coredump原因一般是两个 1、使用了
不
稳定的扩展,例如在php7下使用libevent扩展(目前libevent扩展还没有稳定的php7版本。
问答
在根目录下写了一个启动服
务
使用HTTP协议对外提供Web服
务
```php <?创建一个Worker监听9090端口,使用http协议通讯 $http_worker = new Worker("http://10.211.55.13:9090"); // 启动4个进程对外提供服
务
$http_worker->count = 4; // 接收到浏览器发送的数据时
回
复hello world给浏览器 $http_worker->onMessage = function($connection
问答
在使用AsyncTcpConnection时出现的一个bug
#### 问题描述 我使用AsyncTcpConnection请求gpt的接口,gpt接口是流式返
回
数据的,但是有小概率会把一条完整的数据,分成两次来读。{"index":0,"delta":{"content":"了"},"logprobs":null,"finish_reason":null}]} 可以看到第二行数据明显是被切分成两次了,小概率
事
件,挺难复现的,
不
知道是我用的中转api的问题还是AsyncTcpConnection读数据时候产
生
的问题
问答
GatewayWorker的onWebSocketConnect
回
调函数中能否使用while(true)循环来轮询外部HTTP接口?
最近在开发一个websocket服
务
,需要根据websocket连接上来时携带的参数来创建一个个的session,分别轮询外部的接口服
务
器,来获取实时的话
务
系统状态与话
务
事
件。于是我考虑在GatewayWorker 的onWebSocketConnect
回
调函数中使用while(true)循环来
不
断的轮询接口,直到这个session连接断开。* Closing connection 0 ``` 请问各位大佬,能
不
能这样做?处理这种轮询请求的最佳方式是什么? 谢谢大家!
问答
如何判断是服
务
端主动关闭客户端还是客户端主动关闭socket
gateway文档中对onClose的说明是,无论服
务
的主动还是被动都会触发onClose
回
调,然后现在有一个问题就是想知道是服
务
端主动关闭了socket还是客户端关闭的。
问答
成员变量数据映射
不
一致
#### 问题描述 代码中定义map变量保存映射关系,偶尔出现一种情况,machineConnectionMap与connectionMachineMap的数据
不
对等,比如machineConnectionMap整个代码中仅在onClose中有unset掉map,对于这个问题有点莫名其秒,完全
不
知道从哪里下手排查。PS:因为应用很简单,所以只开了一个进程(即处理连接又处理业
务
,也只能开一个进程,否则多进程内map数据得
不
到共享) ``` class Serve { /** * 当连接建立时触发的
回
调函数$this->connections[$connection->id] = $connection; }; } /** * 当连接断开时触发的
回
调函数
文档
开发前必读
虽然子进程退出后会立刻重新创建一个的相同的子进程继续服
务
,但是还是可能对业
务
产
生
影响。### 6、改完代码需要重启服
务
才能
生
效
由于Workerman是常驻内存的,php类即函数的定义加载一次后便常驻内存,
不
会再次读取磁盘加载,所以每次修改完业
务
代码需要重启才能
生
效
。TCP传输层协议一个重要特点是TCP是基于数据流的,客户端的请求会源源
不
断的发送给服
务
端,服
务
端收到的数据可能
不
是一个完整的请求,也有可能是多个请求连在一起。**注意:只有在on{...}
回
调中载入的文件平滑重启后才会自动更新,启动脚本中直接载入的文件或者写死的代码运行reload
不
会自动更新。),所有进程都持有同一个连接,服
务
端通过这个连接返
回
的数据在多个进程上都可读,会导致数据错乱。
问答
flash客户端请求workerman服
务
端时报错
/> <allow-http-request-headers-from domain="_" headers="_"/> </cross-domain-policy> ``` 另外我另外开启一个服
务
端口为843,给客户端返
回
xml文件还是
不
行。
问答
GatewayWorker在work
回
调中使用内部协议?
场景:app端链接到socket服
务
器端后,需要在别的项目(php项目)处理这个数据,然后再推送给app端。也就是双向通信 问题:如何实现呢?难道
不
能开启一个内部协议?我直接new work报错,找
不
到类!有没有demo? 感谢群主大大!
问答
关于webman异步任
务
的连接创建的问题(workerman道理相同)
[截图](/upload/img/20220524/24628c3e8e2857.png) 如图,calltask_init是异步任
务
服
务
端用来执行耗时任
务
,text协议,进程数开12,async_task_proxy为异步任
务
客户端,websocket协议,进程数开1,我在controller里做http接口,触发异步任
务
时直接连接async_task_proxy并指定要执行的异步任
务
。结果我连接调接口8次,却只有5个任
务
开始执行了,另外3个任
务
为等待状态,具体哪个任
务
执行,目前没发现规律。 我希望得到的结果是:异步任
务
进程数开12的话,那么只有第13个调用时才会发
生
任
务
等待。switch ($data['command']) { case 'init': // 指令为“初始化呼叫任
务
”reusePort (可选,此选项需要php>=7.0,默认为true) 'reusePort' => true, ] ]; ``` ------------ 感谢walkor老大的及时
回
复
问答
linux上workerman启动成功了,但是客户端无法连接是怎么
回
事
?
[attach]344[/attach]客户端用浏览器连接的,提示WebSocket connection to 'ws://xxxx:7272/' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED
问答
gateway worker 自定义协议返
回
object序列化问题
在gateway worker中,使用自定义得protocol类中的decode方法返
回
一个object,框架会判断是否为标量,如果是则会序列化这个类,然后发送到business中。但是在business进程获取这个数据进行反序列化的过程中会出现一定概率失败的情况,这样这个business连接就彻底挂了,再也连
不
上gateway了,也没有重启,只要有消息是丢到这个business的话系统是收
不
到的
问答
新的阿里云服
务
器,CentOS7的系统,html连接websocket总是失败
这
事
什么原因呢 提示是 failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT
问答
使用http协议开启服
务
的时候,如果代码报错了,再重启服
务
就访问
不
了了,并且在关闭服
务
的时候报了一堆错误,请修复。
我用http协议开启了个服
务
,onMessage里面因为代码有问题报错了,然后重启该服
务
,在关闭该服
务
的时候会报错如下: ```php Warning: (null)(): supplied resourcediary/workerManApi/Workerman/Events/Select.php:294 ``` 我代码错误的地方在onMessage方法里面有一段代码,函数要求参数是引用类型,但是我传的
不
是重启了服
务
之后,http服
务
就访问
不
了了,是一直访问
不
了,必须把docker进程杀了才能好。 @walkor
问答
ajax 请求 return view('list.html', $data);
不
给渲染
php 原
生
视图模版,有很多公共的元素,比如某个列表在各种页面经常要用到且list根据
不
同的id有
不
同的数据,单独建了一个 list.html 文件,ajax post get 请求过来,returnview('list.html', $data); 一个html片段给 ajax,结果这个片段的 $data
不
渲染报错了。
不
然要写很多重复代码。。。
« 上一页
1
...
63
64
65
66
67
68
69
70
...
472
下一页 »
« 上一页
66
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝