看代码里,判断了,如果是swoole,用了$_SESSION,就会有提示,作者大佬说长连接不支持协程,想问下,如果都用updateSession方法,驱动改成swoole,每个onmessage事件是不是就会启动一个协程来处理?我把gateway-worker用在游戏业务里,长连接请求量会比较大,如果不用协程,再加上一个连接一旦被绑定,会一直由一个进程来处理,始终担心有性能问题...
问题描述 workerman.log一直在增大,打开看下 内容大概全是 2026-01-20 11:01:29 pid:19063 Gateway: Worker->name conflict. Key:127.0.0.1:YourAppBusinessWorker:2 2026-01-20 11:01:30 pid:19063 Gateway: Worker->name conflict. Key:1...
问题描述 composer create-project workerman/webman:~2.0 直接新建项目。软件包只有 "php": ">=8.1", "workerman/webman-framework": "^2.1", "monolog/monolog": "^2.0" 但是升...
问题描述 这里写问题描述 webman2.0+thinkorm 数据查询会出现 SHOW FULL COLUMNS 1、在 runtime/schema 目录下没有生成 表结构缓存 2、php windows.php 启动后 第一次执行查询 就会出现两次 SHOW FULL COLUMNS 第二次执行查询,不会出现 3、ctrl+c,然后 php windows.php 启动后 ,又会出现2次 SHOW FUL...
问题描述 redis-queue 文件日子里有报错 但是UserPointsLog.php 只是一个模型文件 文件内容如下: ...
问题描述 webman 数据库请求api 数据库读取5万条数据 出现502 nginx错误日志upstream prematurely closed connection while reading response header from upstream, client 之前运行一段时间还好好的 一次性读取的数据多了就出现这个问题, 重启一次webman 跑一次 后面又不行了 ...
问题描述 https://www.workerman.net/doc/webman/middleware.html 这里说可以 在 config/middleware.php 配匿名函数,但是 根据 webman-framework/src/Middleware.php 64 行左右的代码 public static function load($allMiddlewares, string $plugin =...
问题描述 这里详细描述问题 webman的进程,在运行一段时间后,自动重启。没有留下任何日志。退出计数里面是2. 程序代码 报错信息 没有报错,怎么记录多点日志哦? Workerman[start.php] status ------GLOBAL STATUS--------- Workerman version:4.1.3 PHP version:7.3.8 start time:2026-...
Nginx 代理 Gateway recv() failed (104: Connection reset by peer) 这里写问题描述 平常同时在线3w + 左右的流量 2026/01/06 11:01:03 [error] 31950#0: *36858852 recv() failed (104: Connection reset by peer) while proxying upgraded con...
问题描述 https://github.com/walkor/workerman/issues/1128 https://github.com/walkor/workerman/pull/1129 上面的合并在window环境下会导致协程无法使用,没有修改代码之前使用fopen(__FILE__, 'r'),在windows下代码运行是可以正常运行的, 合并以后变成了fopen('php://memory', 'r'...
问题描述 线上API偶现There is already an active transaction异常,ORM框架使用的是think-orm,仔细检查过代码,开启事务后,有成对出现的commit和rollback,没有嵌套事务,请问如何排查和解决。 目前想进一步确认: 1.开启事务后和提交事务后,使用$pdo->inTransaction()检查是否在事务中,都返回true,这是否正常,这样检查可靠吗? 2....
问题描述 大家好!使用官方限流组件最新版 5分钟5次我一直更新资料偶尔会报Too Many Requests 但是操作成功次数远远超过于5次,redis计数也没有跟着上涨有时候还会过期了。请问这是怎么回事呢? 程序代码或配置 // 更新用户资料 #[RateLimiter(limit: 5, ttl: 5 * 60, key: RateLimiter::IP, message: 'Too Many Requests'...
优点: 实现简单,性能好(计数器 + 当前窗口时间即可) 很适合每秒、每分钟那种定量控制场景 缺点: 边界突发,比如 10:00:59 来10个,10:01:00又来10个,就变成1秒内来了20个,系统有可能扛不住(容易“抖动”)...
app ├── controller │ └── BaseController.php ├── validate │ └── BaseValidator.php └── view ... module ├── admin │ ├── controller │ │ ├── BaseController.php │ │ └── IndexController.php │ └── rou...
webman里安装了gatewayworker插件,bussiness进程内存一直增加 onWebSocketConnect、onMessage、onClose三个方法里不执行任何代码全部直接return,每次有长连接建立、关闭,用php start.php status查看,都会发现内存在增加 测试连接脚本 $worker = new Worker(); $worker->onWorkerStart = f...
截图是我的webman运行日志。使用了workerman/redis-queue,想问下大佬们 这个pid:1683 worker[plugin.webman.redis-queue.redis_consumer_shot:2073678] exit 是什么机制导致的退出的。运行时间过长吗,还是说运行了reload命令?如果是运行了reload命令,12-02日以前没有退出...
问题描述 这个报错不是一直报错,有的时候重启消息队列会报,但是重新运行后又正常了 程序代码 /** * 执行任务 * @return void */ protected function execute(Input $input, Output $output) { $this->resetCli($input, $output); ...