Workerman发布5.1版本 Webman发布2.1版本

walkor

Workerman发布5.1版本

  • 要求PHP>=8.1
  • 提供Workerman\Coroutine类,底层自动适配Swoole、Swow、Fiber协程
  • 提供协程相关的组件,例如 Context Channel Barrier Parallel WaitGroup Locker Pool等,底层自动适配Swoole、Swow、Fiber协程

workerman协程文档

Webman发布2.1版本

  • 要求PHP>=8.1
  • 依赖Workerman 5.1
  • 支持Workerman 5.1的协程及组件
  • 数据库、redis等库的改造

webman 2.1协程组件

webman v2.1 已经提供了以下组件,它们都集成了连接池,支持在协程和非协程环境下使用

注意事项

升级后不会自动使用协程,需要设置eventLoop才会开启协程,直接升级对业务没有影响。
如果有使用数据库 redis等组件,需要同步升级,参见升级到v2.1

相关文档

升级到v2.1
webman协程

最后

协程并非银弹,它有自己的局限性,引入协程会带来全局变量污染问题、资源竞争问题、调试困难问题。
从压测数据来看,在充分利用CPU的情况下,引入协程极限性能一般会下降10-20%。
但是在有慢IO业务中,引入协程确实会大幅度提升性能。

建议

  • 协程不是必须的
  • 旧项目不建议无脑开启协程,这有可能带来因全局变量污染问题导致的数据错乱
  • 新项目可以考虑使用协程,但是没有必要为了协程而使用协程
  • 旧项目遇到慢IO相关的业务可以考虑单独启动一组进程开启协程处理,参考webman协程与非协程混合部署
1078 19 5
19个回答

Tinywan

牛啊

Workerman[start.php] start in DEBUG mode
-------------------------------------------- WORKERMAN ---------------------------------------------
Workerman/5.1.0         PHP/8.2.10 (Jit off)          Linux/5.15.167.4-microsoft-standard-WSL2
--------------------------------------------- WORKERS ----------------------------------------------
event-loop  proto       user        worker      listen                 count       state            
event       tcp         root        webman      http://0.0.0.0:8201    24           [OK]            
event       tcp         root        monitor     none                   1            [OK]            
----------------------------------------------------------------------------------------------------
  • 暂无评论
chaz6chez

👍!

  • 暂无评论
AnT2077

牛牛牛

  • 暂无评论
learner

给力!只要eventloop不配置就不会启用协程吧

  • 暂无评论
咸鱼不咸

升级升级

  • 暂无评论
Madman

这个必需顶!

  • 暂无评论
glitter

支持

  • 暂无评论
shanyi

棒呆~

  • 暂无评论
不败少龙

6666

  • 暂无评论
liziyu

🐂 Db

  • 暂无评论
xiaoming

十分强大
对心智要求还好

  • 暂无评论
rbb

  • 暂无评论
liudada1204

牛牛牛

  • 暂无评论
ccc

6666

  • 暂无评论
pengzhen

大佬,什么叫有慢io的业务?操作数据库,有redis请求,还有登录和支付需要调用第三方接口,这些算慢io吗?看文档,没有提供根据协程id获取协程上下文的方法,如果用的swoole驱动,协程里有协程,怎么获取父协程上下文

  • 暂无评论
hunma

帅,直接升级

  • 暂无评论
saithink

强的离谱!

  • 暂无评论
wocall

后面的几个小升级,对我来说都用不上😄

  • 暂无评论
phpcreeper

👍👍

  • 暂无评论
×
🔝