workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
使用workerman运行web服
务
时 Redis报错
使用workerman运行web服
务
, 在 onworekrStart时 初始化redis 通过Global传递至 onMessage中 , 在使用$redis->get() 时 var_dump返
回
问答
第三方框架调用gateway推送消息,客户端接收
不
到
在第三方框架调用gateway给客户端发信息,本地windows都是通的,布到服
务
器上客户端一直接
不
到推送的消息。有可能什么原因造成的。 代码追踪到gateway.php的1237行。两个address返
回
的都是true 。 服
务
器和本地代码一致,这种情况从哪方面排查比较靠谱~辛苦大佬解答了
问答
关于业
务
的问题, 选择woerkman 跟gate, 连接数的问题
后台按钮触发 按钮 socket ,,让后端发tcp 然后监听tcp
回
传 在
回
馈给 界面 这种业
务
是用 GatewayWoker 还是 wokerman,,,,,,,我的tcp服
务
监听 还需要保持连接在
问答
GatewayWorker 中Timer问题
在新的连接中,我会判断设备是否时这种断了又连的情况,如果是这种情况我会用Gateway::closeClient($old_client_id); 关闭老连接,在onclose
事
件中 去删除 在老连接开启的现在又两问题: 1:有时20秒任
务
突然
不
运行了。这个时根据设备端发送的心跳信息判断的,正常在20秒任
务
中,我会与设备通讯一次。因此设备是
不
会发送心跳信号的,如果60秒设备与服
务
器之前没有通讯就会发送心跳。因此服
务
端接收到心跳时,我只有重新开始一个20秒任
务
,来解决这个Timer失
效
的问题; 2:在onclose 删除定时器时,有时候觉得好像没有删除掉,因为对于的逻辑还在运行,还在向数据库写数据。3:我如何知道到底当前
不
同的worker进程中有哪些定时器任
务
在执行呢? 请指点下,谢谢!
问答
ai问答+php8.1-static,
回
复报错
#### 问题描述 ai问答 php8.1静态编译版本,
回
复显示 ``` php_network_getaddresses: getaddrinfo for ai.fakeopen.com failed[截图](/upload/img/20231031/316540d2c8e528.png) #### 测试结果 结果测试,使用apt安装的php8.1-cli就可以正常
回
复,但是使用php8.1
问答
Workerman的onMessage中调用外部so库中的有返
回
值的函数,返
回
值一直为0
php_printf("hello_dec_test\r\n"); RETURN_LONG(result); } ``` 现在的情况是,当我在onmessage 里面调用这个函数,返
回
值一直是{ echo "add_test"; return $a+$b; } ``` 在onmessage 里调用返
回
值就是
问答
Gateway 使用curl post
建立好了注册监听tcp机制,所有设备通过监听接口接入并且储存有用信息到数据库,其他
不
同使用平台接入的时候通过自定义的http api 接入 当接收到请求后硬件会有一个异步请求到监听接口 我通过 curlpost 推送给
不
同平台的
不
同接口完成异步。问 使用 curl post 会
不
会产
生
阻塞 或者
效
率问题 应该或者有没有别的解决方式或者方案
问答
计时器嵌套会
不
会出现问题?
**预期的
效
果**:通过 gateway 向已建立连接的客户端设备发送指令,但由于客户端接收
不
同指令的时间有1s的限制,所以需要进行延时。 Gateway::sendToUid($uid, hex2bin($ins)); sleep(1); } }); ``` 但这种实现方式容易出现服
务
端 } }); }); ``` **疑问**:现在这种方式频繁添加删除定时器,而且出现定时器嵌套,是否会出现什么
不
良影响,如服
务
器负担加重或其他的什么问题?
问答
[已解决]docker webman协程使用swoole报错Create io_uring failed
# 问题描述 阿里云 alios 3 快速启动镜像 使用swoole协程异常 日志一直
滚
.. 使用Fiber正常.
问答
webman 删除掉的文件 使用is_file() 一直返
回
true
public function hot(){ var_dump(is_file(runtime_path().DIRECTORY_SEPARATOR.'1.txt')); } ``` 第一次访问返
回
true然后删除掉 runtime/1.txt 还是返
回
true 这样的问题该怎么理解呢...
问答
js
回
调时更新用户状态的问题
data){ // console.log(data); // }); break; 想着在用户退出
事
件中改下数据库
问答
多进程,怎么理解每个worker中,
不
会导致并发数据混乱问题
注意:
不
要在主进程中初始化数据库、memcache、redis等连接资源,因为主进程初始化的连接可能会被子进程自动继承(尤其是使用单例的时候),所有进程都持有同一个连接,服
务
端通过这个连接返
回
的数据在多个进程上都可读同样的,如果任何一个进程关闭连接(例如daemon模式运行时主进程会退出导致连接关闭),都导致所有子进程的连接都被一起关闭,并发
生
不
可预知的错误,例如mysql gone away 错误。** **2、但是每个子进程中的链接资源,就
不
会导致这个进程中处理数据混乱了吗?拿数据库连接来说,我的理解是,每个子进程能并发处理请求,那说明
不
同请求都会使用数据库连接资源,甚至
不
同请求都在处理同一条数据。这样
不
会导致数据混乱吗,是什么机制呢?**
问答
webman框架1.5版本,需要对请求
生
命周期中增加全局设置数据和获取怎么做.[已解决]
#### 问题描述 中间件要求接收Webman\Http\Request,这样就
不
能使用support/request,我就没法在中间件使用自定义的请求封装的方法.实际上我只是需要在 一次请求的
生
命周期中,增加在本次请求自己
生
成的全局数据. 没找到相应的方式, $request没有相应的属性操作方法. 都是get的.直接去操作request,给他设置一个属性值,
不
太喜欢这种方式,ide会识别
不
到属性有提示很恶心, 大家有其他方法吗
问答
异步任
务
获得结果后可以
不
关闭连接吗
如题,异步任
务
是处理数据存入Redis的, // 获得结果后记得关闭异步连接 $task_connection->close(); , 如果
不
关闭这个连接会有什么影响么
问答
能否给个workerman搭建mqtt服
务
器的例子
不
是客户端哦
能否给个workerman搭建mqtt服
务
器的例子
不
是客户端哦
问答
gatewayWorker部署到linux主要作websocket服
务
,经常报 Gateway and BusinessWorker are not ready错误
[截图](//www.workerman.net/upload/20200911/115f5b6b46a14b.png) 虽然web网站也使用了同一台服
务
器,但是访问量确实很少,只几个人而已。2、有个windows服
务
器,而且必需使用windows服
务
器,使用workerman开启 AsyncTcpConnection,如何规避256连接数的限制,而且是否close方法是无
效
的?
问答
workerman进程里启动Redis偶尔报错问题
#### 问题描述 进程里有用到Redis,但是发现经常会出现Redis连接错误,进程运行过程中发
生
的。报下面的错误。RedisException: read error on connection to 127.0.0.1:6379 这个问题困扰很久了,有没有好的办法,实在进程onWorkerStart
事
件里启动的没有用到Workerman的Redis插件,文档里提示插件主要是解决Redis队列的,简单应用建议
不
用使用。
问答
webman上传文件返
回
500错误 [已解决]
#### 问题描述 今天做到文件上传这个功能,发现
不
管怎么发送都是返
回
以下错误。500 Internal Server Error nginx/1.25.4 使用了最简单的表单提交也是一样,直接在浏览器里访问上传地址可以返
回
正确的提示信息的。路由改为Route::any()也依然
不
好使。 #### 程序代码 ``` <form method="post" action="/upload/test?
文档
开发必读
当然,进程退出了会立刻重启一个新的进程继续服
务
。如果需要返
回
,可以调用return。**8、
不
要使用pcntl_fork函数** `pcntl_fork`用来动态创建新的进程,如果在业
务
代码中使用`pcntl_fork`,它可能会产
生
无法
回
收孤儿进程,导致业
务
出现异常。业
务
中`pcntl_fork`还会影响连接、消息、连接关闭、定时器等
事
件的处理,导致
不
可预知的异常。**9、业
务
代码里
不
要有死循环** 业
务
代码里
不
要有死循环,否则会导致控制权无法交还给workerman框架,导致无法接收处理其它客户端消息。**10、改代码要重启** workerman是常驻内存的框架,改代码要重启workerman才能看到新代码的
效
果。
问答
websocket服
务
,向客户端发送消息,总是保持一段时间后,就
不
送
不
了消息
服
务
必须reload后,客户端才能再次收到消息 心跳都加了,用的GatewayWorker reload时,偶尔会报这个错误,
不
知道是
不
是这个原因导致的 2023-07-17 10:30:04 pid
« 上一页
1
...
57
58
59
60
61
62
63
64
...
481
下一页 »
« 上一页
60
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝