WebMan 框架

官网
https://www.workerman.net
github官网
https://github.com/walkor/webman
gitee官网
https://gitee.com/walkor/webman
V1 版本文档
https://www.workerman.net/doc/webman-v1/
Webman是一款基于Workerman构建的高性能服务框架,集成了HTTP、WebSocket、TCP、UDP等多种模块。
通过常驻内存、协程、连接池等先进技术,Webman不仅突破了传统PHP的性能瓶颈,还极大地扩展了其应用场景。
此外,Webman还提供了强大的插件机制,使开发者能够快速集成和复用其他开发者开发的功能模块。
无论是构建网站、开发HTTP接口、实现即时通讯、搭建物联网系统,还是开发游戏、TCP/UDP服务、Unix Socket服务等,Webman都能轻松应对,展现出卓越的性能和灵活性。
V2 版本要求
V1 版本要求
使用
根据文档,使用方法和ThinkPhp非常相似,没有太多学习负担。
和tp框架稍微差异在于多应用的设置。
V1&V2

多应用中app层下可以有controller层,而不是必须只有多应用的文件夹。
V2和V1的最大差异在于swoole的整合。
V1
需要手动整合swoole。
V2
框架自带swoole。
与hyperf比较
之前学过hyperf,比较下两个不同。
hyperf 2.2 php>= 7.4 and <= 8.0
webman V2和hyperf 3.0比较
Hyperf 在极端高并发和异步任务(如批量推送、消息队列)中表现更优;Webman 在常规 Web 应用中性能已足够且更稳定。
- Webman V2 = 简单 + 高性能 + 易上手,适合大多数 Web 应用。
- Hyperf 3.0 = 强大 + 异步 + 微服务,适合复杂、高并发系统。
webman V1和hyperf 2.2比较
| | |
|---|
| 简单请求可达 18万+ QPS;数据库业务场景下可达 39万 QPS | 简单请求同样为 18万+ QPS,但在微服务、分布式调用等复杂场景中优化更佳。 |
| 基于 Workerman(多进程 + 阻塞 I/O),虽可整合 Swoole 实现协程,但非原生协程架构,单进程连接数上限约 10 万+(长连接)。 | 原生基于 Swoole 协程引擎,异步非阻塞 I/O,单进程支持更高并发,尤其适合高并发短连接场景。 |
| 内存占用较低,优化了 HTTP 解析流程(仅需 3 步:接收→处理→响应),适合轻量级高吞吐 Web 服务。 | 因包含协程栈、依赖注入(DI)、服务治理等企业级组件,默认内存占用较高。 |
若仅看纯 HTTP 性能,Webman V1 略胜一筹;若考虑微服务、协程生态与长期维护,Hyperf 2.2 更具优势。
总结webman和hyperf比较
选择 Webman 场景
- 项目以 Web API、管理后台、即时通讯 为主。
- 团队 不熟悉异步编程,希望快速开发、稳定上线。
- 需要 复用现有 Laravel 组件 或使用成熟插件(如 webman-admin)。
选择 Hyperf 场景
- 项目涉及 高并发异步任务(如批量短信、消息推送、爬虫)。
- 需要构建 微服务架构,支持 gRPC、RPC、分布式调用。
- 团队有 Go 或 Node.js 异步开发经验,能接受较高学习成本。
若优先考虑开发效率与稳定性,推荐 Webman;若追求极致性能与异步能力,且团队有能力投入学习,Hyperf 更合适。
webman V1 和 thinkphp 6比较
| | |
|---|
| 基于 Workerman 的常驻内存模型,进程启动后代码常驻内存 | 基于 PHP-FPM 的短生命周期模型,每个请求独立加载销毁 |
| 极高。官方测试带数据库查询业务可达 39万+ QPS | 常规。可满足绝大多数业务,但受限于 PHP-FPM 模式 |
| | |
| 灵活。可无缝使用 ThinkORM、Eloquent 等第三方 ORM | 原生集成。使用官方的 ThinkORM,框架深度整合 |
| 支持原生 PHP 语法,也可通过扩展集成 Twig、Blade 等 | |
| | 功能完备。自带验证器、事件系统、多应用支持等完整生态 |
| | |
| | |
| 需在 CLI 模式下启动,支持平滑重启,可打包为二进制文件 | 传统 Web 服务器(Nginx/Apache)配置,上传文件即可 |
| 高并发 API、长连接应用(WebSocket)、实时通信 | 传统 Web 应用、企业管理系统、快速迭代的常规项目 |
| 低。对 ThinkPHP/Laravel 开发者上手极快,但需理解常驻内存概念 | |
| 相对较小但增长迅速,可复用 Laravel/ThinkPHP 的 Composer 包 | 生态成熟,中文文档丰富,开发者众多,问题解决方案完备 |
选 webman 场景
WebSocket/长连接 服务(聊天、推送、游戏)。
熟悉 Laravel/ThinkPHP 生态,但希望性能更高的开发者。
选 ThinkPHP 6 场景
webman
常驻内存。
框架启动后一直运行,每次请求只需执行业务逻辑。
优势是性能极高(适合高并发、微服务、WebSocket),缺点是修改代码后需要重启服务。
ThinkPHP 6
传统 PHP-FPM。
每次请求都要重新加载和销毁所有资源。
优势是开发调试简单(热更新,改完代码刷新就看效果),缺点是性能开销大。