workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
队列中使用redis 出现错误
#### 问题描述 目前需求是 第三方接口有请求限
制
接口请求频率限
制
:200次/秒。 消息条
数
限
制
:12000条/分钟。按接收消息
数
量计算条
数
,若一次
发
送
给500个用户,计作500条。每次最多500用户 目前使用方案是动态双维度限流方案, 当投递
数
据
交小时 是不会出现错误的,较大就会 目前是4个
进
程 初步怀疑是不是一直投递,然后队列消费不满足规则后,又投递,导致redis响应体过大超出缓存区导致的dynamic_limit -- 动态限
制
值 } end -- ===== 通过检查,更新
数
据
===== -- 更新当前分片 local current_win_key= 1) { $this->sendToTencentIM($users, $data['message']); $logs .= "[INFO]\t
发
送
成功PHP_EOL; if ($attempts == 5) { $logs .= "[ERROR]\t
发
送
失败, 超过最大重试次
数
,不在重试" .
问答
java 客户端 用datainputstream 来向 workerman php服务器通信
发
送
数
据
,php服务器用什么方法接收处理
数
据
?
求救啊?各位大神? 可以给个思路吗? 非常感谢!
问答
Gateway做物联网平台,循环下
发
指令的方案设计。
我用Gateway做了一个物联网平台提供TCP服务端功能,供各个设备作为客户端连接,然后
进
行通讯。目前有一个需求:有些客户端设备连接后,需要服务端定时下
发
指令给客户端,比如每一秒下
发
一次指令给客户端,客户端返回
数
据
报文,典型的如MODBUS协议。请教一下关于这个定时下
发
的方案设计,怎么设计比较合理。 我现在采用的方案是:客户端连接成功之后,在onMessage里启动Timer定时器,连接断开后del。比较担心如果客户端
数
量过多的时候这种方案会不会影响性能。
问答
webman/admin
发
布0.5.0版
### **[webman/admin](https://github.com/webman-php/admin)
发
布0.5.0版本** 源码地址 https://github.com/webman-php),无过度封装,无需编译,非常简单 * 增加附件功能 * 增加字典功能 * 增加系统设置 * 完善一键CRUD,可以生成到主项目 * 增加表单构建功能 * 增加示例页面 * 其他一些优化变更 此版本
数
据
库和接口有诸多更改## 安装升级 **安装方法(前提已经安装了webman)**
进
入webman目录,执行 ``` composer require -W webman/admin ``` 老项目需要先手动删除`/plugin/admin/` 目录(注意备份) 安装后访问 `http://127.0.0.1:8787/app/admin/` 完成
数
据
库配置及管理员账户配置 ## 各种主题界面预览 !
问答
getwayworker中client_id问题
#### 问题描述 用getwayworker和手表端建立一个长连接,手表每次开机会给服务器
发
过来登录包,登录包里面还有设备id,后面的
数
据
不会再有设备id,服务器
进
行相关处理绑定client_id和设备id并记录,以后接收的
数
据
依靠client_id区分是哪台设备。现在遇到一个问题,这个client_id突然
发
生变化,导致在系统中根
据
此client_id找不到相应的设备id,并且长时间由于之前的client_id没有
数
据
传输断开连接,这个手表的
数
据
没有办法再
进
行判断存储其实就是手表扔和服务器
进
行着连接,client_id在没有经过登录包情况下突然
发
生变化导致系统根
据
这个新的client_id找不到设备,致使这台设备的
数
据
也就中断。
问答
onWorkerStart中类的变量会混淆么
SetTradeStatus.php'; use Workerman\Worker; use Workerman\Lib\Timer; use think\DB; $task = new Worker(); // 开启多少个
进
程运行定时任务,注意业务是否在多
进
程有并
发
问题 $task->count = 1; $task->onWorkerStart = function() { $SetTradeStatus = new$this->trade_data = $trade_data; // 设置订单状态 $this->set_trade_status(); //
发
送
设备通知name('msg')->data($data)->insert(); } } ``` ------------ 类文件中, $this->trade_data 会被混淆么, 在执行ID为1的
数
据
的时候,trade_data 为1:;这个trade_data 会被下一次执行的
数
据
覆盖么
问答
请问用gateway架构怎么收
发
文件
我想用gateway 的架构
进
行文件的收
发
,比如说我的客户端
发
一个1.jpg的文件,在gateway的onMessage怎么处理。这个架构里面好像并没有文件处理的api, 我现在的做法是在onmessage里面新建一个文件,然后接收到的字节流都保存到这个文件里面,结果与我
发
送
的文件大小有区别。
问答
异常捕获和记录
我在守护
进
程下运行。try 了回调方法,但是
发
现回调里报了致命的错误但是没有捕获,我在stdoutFile 设置的文件里也没有看到错误。比如缺少扩展之类的。
进
程直接退出了。class, $method), $param_array);//回调里有报错但是没有catch住也就没有上报到日志系统里 } catch (Exception $e) { //
发
送
数
据
给客户端,
发
生异常,调用失败 $code = $e->getCode() ?
问答
TCP客户端不能100%收到服务器消息
upload/20210827/27612858bd3e02.png) 目前TCP客户端是4G模块 通过联网与服务器通讯(websocket是APP通讯) 我通过接口使用GatewayClient客户端推
送
也好[](//www.workerman.net/upload/20210827/27612859ceea92.png) 还是通过Events.php 里onMessage去处理
发
送
给TCP客户端都不能100%
发
送
到,有时候会没接受到
数
据
,请问是什么原因呢?
问答
GatewayWorker
的Events.php中调用Worker::runAll()出现异常
```php public static function onWorkerStart() { $task = new Worker(); // 开启多少个
进
程运行定时任务,注意业务是否在多
进
程有并
发
问题 $task->count = 1; $task->onWorkerStart = function ($task) {} ``` 我在测试定时器,但是用worker运行就会出现这个问题,而直接使用Timer则正常 感觉在这里不应该再Worker::runAll();了,但定时器无法启动,请赐教,非常感谢 环境:
GatewayWorker
问答
关于阻塞的疑问
我用的workerman3.3.5,用户每次请求我服务器的php页面,PHP页面在收到用户请求后,会
发
一个内部消息给workerman,workerman收到后会
进
行
数
据
库写入操作,大概需要20秒。服务器是单核2G,我现在
进
程
数
设置的是5,如果同时在线人
数
太多,5个
进
程都在阻塞的话,那么新的用户请求
发
出后,workerman是怎么操作,一直等待阻塞完成后继续
数
据
操作,还是后面的请求就不执行了?
问答
服务端定时器能都定时到每秒
发
送
多少次消息
我这边是在后端计算前段的走路 因为是共享的场景 就像贪吃蛇网络版一样 如果前段来走位置同步
发
送
消息的频率的别的客户端同步会有延时 所以我这边是做在后端的 但是后端能设置定时器的时间单位是秒吧 只能一秒一次
问答
GatewayWorker
客户端如何调用服务端的方法
客户端调用服务端的登录方法获取登录结果,前端是javascirpt,后端是
GatewayWorker
例如后端有个login的方法,前台js如何请求login方法并根
据
返回的结果做相应的处理?
文档
onConnect
# onConnect ## 说明: ```php callback Worker::$onConnect ``` 当客户端与Workerman建立连接时(TCP三次握手完成后)触
发
的回调函
数
。注意:onConnect事件仅仅代表客户端与Workerman完成了TCP三次握手,这时客户端还没有
发
来任何
数
据
,此时除了通过```$connection->getRemoteIp()```获得对方ip,没有其他可以鉴别客户端的
数
据
或者信息,所以在onConnect事件里无法确认对方是谁。要想知道对方是谁,需要客户端
发
送
鉴权
数
据
,例如某个token或者用户名密码之类,在[onMessage回调](on-message.md)里做鉴权。## 回调函
数
的参
数
``` $connection ``` 连接对象,即[TcpConnection实例](../tcp-connection.md),用于操作客户端连接,如[
发
送
数
据
](..
问答
服务端如何推
送
最近刚看workerman,我想问下文档上主动推
送
的定时器应该写在哪,并且该如何触
发
问答
webman 文件监控
GatewayWorker
#### 问题描述 webman 使用
GatewayWorker
的时候 文件监控 监控不到
GatewayWorker
的文件,改哪里可以监控它
问答
[已解决]新手问题 怎么样让一个
进
程处理多个客户端连接
在win上跑了段代码,但是只能通过一个网页
进
行连接,开第
二
个网页就没法连接了 代码是一个博客上找的,地址是:http://blog.csdn.net/github_26672553/article/details/54932788 请问怎么样可以让一个
进
程处理多个客户端连接
问答
关于异步任务
能否自动切换到第
二
台服务器吗?127.0.0.1,如果是集群就是lvs的ip $task_connection = new AsyncTcpConnection('Text://127.0.0.1:12345'); // 任务及参
数
数
据
send_mail', 'args' => array('from'=>'xxx', 'to'=>'xxx', 'contents'=>'xxx'), ); //
发
送
数
据
问答
webman框架【表添加新字段后,添加
数
据
报错,需要restart才能添加
数
据
】
#### 问题描述 分析表需要灵活添加字段,添加字段后插入
数
据
操作提示报错,找不到该字段。需要执行php start.php restart -d才能正常插入。
问答
webman-admin左侧菜单js报错
[](/upload/img/20230817/1764ddbc4aefd5.png) 如图,有时刷新页面的时候会出现此js报错,无法加载左侧全部菜单,第
二
遍刷新就正常了,当前页面的菜单不是后台一键生成的,是我自己手动添加
进
去的控
制
器文件,请问大家有遇到过这问题吗?
« 上一页
1
...
112
113
114
115
116
117
118
119
...
447
下一页 »
« 上一页
115
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝