问题描述 我是在webman里使用GatewayWorker 开了一个7373端口协议是text. 这个端口我主要是用来接硬件传过来的数据,并把硬件传过来的数据存储到redis中。之后执行一些逻辑操作 但是我发现 我redis有非硬件传过来的乱码 ,这个是什么情况。该怎么解决呀 乱码如图 ...
问题描述 目前业务是建立一个tcp设备接入管理系统(项目A), 使用的webman框架. 跑了一个tcp监听的8282端口 主要负责tcp设备接入 收到消息后 转化为json格式post给web项目B. 当web项目B需要给指定设备发消息时, post给本webman的项目A, 故需要在项目A的controller等业务中拿到8282端口下指定clientid的connection发消息, 看了下文档没有对这块有相关...
问题描述 使用 AsyncTcpConnection 作为Websocket客户端,连接 wss://example.com/aaa/bbb?a=xxx&b=yyy ws服务端在建立连接之后需要立即发送鉴权信息。然后进行业务请求。 目前问题表现为:Sec-WebSocket-Accept not found. Header: 好像根本就没有成功建立ws连接。响应头: Sec-WebSocket-Accept ...
之前api是用Thinkphp5.1写的,最近中webman的毒很深,所以花了点时间,使用webman重构了一下。 整体移值难度不高,但是效果却很明显,下面是CPU使用和请求时间的对比, Thinkphp webman Thinkphp webman ...
问题描述 按照示例的代码尝试链接WSS报错 程序代码 $con = new AsyncTcpConnection('wss://ws.yuming.com:2888'); // 设置以ssl加密方式访问,使之成为wss $con->transport = 'ssl'; $con->onConnect = function(AsyncTcp...
问题描述 框架默认将request对象传入控制器方法中,然后参数都从request对象中获取,我想要的是请求参数能直接绑定方法上。 例如: public function json($id,$name) { return json(['code' => 0, 'msg' => 'ok', 'req'=>[$id, $name]]); } 请求传id和name两个参数过来时,直接在方法的$i...
问题描述 因为业务需要在默认账号写入数据后,前端需要用只读账号消费数据,在配置里设置了只读账号后服务器上能登录这个账号,但在本地测试远程登录时显示 RedisException: WRONGPASS invalid username-password pair or user is disabled. in xxxx\vendor\illuminate\redis\Connectors\PhpRedisConnect...
问题描述 这里详细描述问题 程序代码 <?php require_once __DIR__ . '/../../vendor/autoload.php'; use Workerman\Connection\AsyncTcpConnection; use Workerman\Worker; $worker = new Worker('text://0.0.0.0:6161'); $worker->onWor...
问题描述 webman吧session信息存入到了redis中,如何取出来,具体方法是什么?比如下图redis中的内容如何取 session的配置数据: redis中的数据: ...
问题描述 在前台控制器文件上面添加一层后访问接口报404错误 程序代码 config/route.php Route::group('/v1/user', function () { Route::post('/login', [app\controller\v1\UserController::class,'login']); //登录 }); app/UserController/v1/UserC...
背景描述 部署环境为分布式部署,定时任务期望其中某台服务器执行,故在代码中使用 Redis::setNx 来创建任务锁,期望拿到锁的服务器执行任务。 示例代码 // 每天凌晨2点执行更新状态信息 new Crontab('0 2 * * *', function () { // 负载均衡下有多台服务器,所以拿到更新锁的服务器才能执行任务 ...
问题描述 直播人不多的时候 很少出现 人一多出一大片这种保存信息 程序代码 webman内部使用gatewayworker 截图报错信息里报错文件相关代码 这里粘贴截图 Notice: Undefined index: cmd in /www/wwwroot/webman/webman/vendor/workerman/gateway-worker/src/Gateway.php on line 539 gatewa...
客户端连接上来后,在没有超时的情况下,同一个客户端又发起了一个连接,如何判断是否存在旧连接,然后把旧连接踢掉,如果通过循环判断,如果客户端连接有很多的话,在onMessage做这个循环,感觉不合理,有没有什么好的方法能实现...
比如一个表里有个3,5万个数据遍历投递很慢 foreach ($users as $data) { $queue = 'sms'; Redis::send($queue, $data); } 这样很慢有啥解决方案吗...