webman 已内置 workerman 依赖,无需单独安装;其实际版本可通过 composer show 或检查 composer.lock 确认;升级应通过更新 webman-framework 实现,避免手动 require 导致冲突。

Webman 本身已内置 Workerman 依赖,无需单独安装 Workerman 5.2.3。你看到的 Workerman 5.2.3 是 Webman 框架底层所用的 Workerman 版本号,它由 Webman 的 composer.json 自动约束并拉取,不是用户手动指定安装的独立包。
确认当前使用的 Workerman 版本
进入你的 Webman 项目根目录,执行:
-
composer show workerman/workerman—— 查看实际安装的 Workerman 版本 -
grep \"workerman/workerman\" composer.lock -A 2—— 检查 lock 文件中锁定的具体版本(通常为 ~5.2.0 或 ^5.2)
升级到 Workerman 5.2.3(如需)
Webman 官方维护的稳定分支(如 webman-framework v2.2.x)默认兼容 Workerman 5.2.x。若你当前版本低于 5.2.3,可通过升级 webman-framework 间接升级 Workerman:
Webman 2.2.0版本强化了 TCP/UDP 服务支持,优化路由组管理,并增强异步任务处理能力。结合协程与连接池技术,Webman 能轻松应对高并发场景,适用于网站、接口服务、即时通讯、物联网及游戏开发,兼具高性能、灵活扩展与稳定可靠,是多场景 PHP 服务开发的理想选择。
- 运行
composer update workerman/webman-framework --with-dependencies - 该命令会同步更新其依赖的
workerman/workerman至兼容的最新 5.2.x 小版本(含 5.2.3) - 升级后执行
composer dump-autoload -o确保自动加载映射生效
不建议手动 require workerman/workerman
直接运行 composer require workerman/workerman:5.2.3 可能导致版本冲突,因为:
- Webman 框架代码与特定范围的 Workerman 版本做了适配(例如类名、事件回调签名)
- 强行覆盖可能破坏
webman-framework内部对 Worker 生命周期、进程管理、HTTP 协议栈的封装逻辑 - 常见报错包括:
Class Worker not found、Cannot redeclare class Worker或启动后无响应
验证是否正常工作
升级完成后,运行:
-
php start.php start(开发模式)或php start.php start -d(守护模式) - 检查终端输出是否包含
Workerman version: 5.2.3类似提示(部分版本会在启动日志中标明) - 访问
http://127.0.0.1:8787(默认 Webman 监听端口)确认服务响应正常










