workbunny/webman-swow
最新稳定版本:0.0.2
Composer 安装命令:
composer require workbunny/webman-swow
包简介
Webman plugin workbunny/webman-swow
README 文档
README
简介
webman-swow是一个webman开发框架生态下的协程基建支撑插件,主要实现以下功能:
- 支持workerman 4.x的swow协程驱动能力,兼容workerman 5.x版本自带的swow协程驱动;
- 支持workerman 4.x的swoole协程驱动能力,兼容workerman 5.x版本自带的swoole协程驱动;
- 实现coroutine web server,用于实现具备协程能力的web框架基建
说明
- workerman 4.x/5.x驱动下的webman框架无法完整使用swoole的协程能力,所以使用CoroutineWebServer来替代webman自带的webServer
- workerman 4.x下还未有官方支持的swow协程驱动,本插件提供SwowEvent事件驱动支撑workerman 4.x下的协程能力
- 由于配置event-loop等操作相较于普通开发会存在一定的心智负担,所以本插件提供了
event_loop()函数,用于根据当前环境自动选择合适的事件驱动
使用
swow
- 使用
composer require workbunny/webman-swow安装插件包 - 使用
./vendor/bin/swow-builder安装swow拓展,注意请关闭swoole环境 - 修改
config/server.php中'event_loop' => \Workbunny\WebmanSwow\event_loop(),event_loop()函数会根据当前环境自行判断当前的workerman版本,自动选择合适的事件驱动- 当开启swow拓展时,workerman 4.x下使用SwowEvent事件驱动
- 当开启swow拓展时,workerman 5.x下使用workerman自带的Swow事件驱动
- 当未开启swow时,使用workerman自带的Event事件驱动
- 使用
php -d extension=swow webman start启动 - webman自带的webServer协程化,可以关闭启动的CoroutineWebServer
Tips:CoroutineWebServer可以在config/plugin/workbunny/webman-swow/app.php中通过enable=false关闭启动
swoole
- 使用
pecl install swoole安装稳定版swoole拓展 - 建议不要将swoole加入php.ini配置文件
- 修改
config/server.php中'event_loop' => \Workbunny\WebmanSwow\event_loop(),event_loop()函数会根据当前环境自行判断当前的workerman版本,自动选择合适的事件驱动- 当开启swoole拓展时,workerman 4.x下使用SwooleEvent事件驱动
- 当开启swoole拓展时,workerman 5.x下使用workerman自带的Swoole事件驱动
- 当未开启swoole时,使用workerman自带的Event事件驱动
- 使用
php -d extension=swoole webman start启动 - 通过
config/plugin/workbunny/webman-swow/process.php启动的CoroutineWebServer可以用于协程环境开发,原服务还是BIO模式
workbunny/webman-swow 适用场景与选型建议
workbunny/webman-swow 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 6, 最近一次更新时间为 2024 年 09 月 26 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 workbunny/webman-swow 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 workbunny/webman-swow 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 9
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 6
- 点击次数: 20
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-09-26