我发现大部分的PHP环境都没有默认安装event扩展,也就是说我们要想性能好,就得安装event扩展或者使用swoole事件,例如 Worker::$eventLoopClass = \Workerman\Events\Swoole::class; 这样就可以让wookerman使用swoole替代默认的原生Select事件处理机制。
那么既然都要额外安装扩展,到底是event扩展性能好还是swoole好点呢?
各有什么优势呢?懂的大佬帮解答一下呢?
性能差不多,如果你不用swoole的协程,用event更好一些。
请问CPU密集型和IO密集型分别用哪种驱动合适呢? mysql数据库的CPU占用率很高
CPU密集用哪种都差不多,Event和Swoole本身就是IO库,面向IO密集的 mysql数据库的CPU占用高那是mysql的事情,跟你用哪种驱动没有太大的关系
@nitron 感谢解答,之前满心期待Swoole驱动可以降低我CPU占用率呢
mysql的服务占用cpu,把mysql部署到别的机器上去
@rbb 明白了,感谢提供解决方案
24年的帖子噢,直接用red云数据库就好了价格也划算
这玩意说白了主要性能瓶颈是MySQL。不是大项目的话,还是优化一下SQL语句见效来的更快些哦。 使用协程主要还是用在http客户端请求更划算一些,否则多开几个workerman进程更划算(对比所节省下来的心智负担)
性能差不多,如果你不用swoole的协程,用event更好一些。
请问CPU密集型和IO密集型分别用哪种驱动合适呢? mysql数据库的CPU占用率很高
CPU密集用哪种都差不多,Event和Swoole本身就是IO库,面向IO密集的
mysql数据库的CPU占用高那是mysql的事情,跟你用哪种驱动没有太大的关系
@nitron 感谢解答,之前满心期待Swoole驱动可以降低我CPU占用率呢
mysql的服务占用cpu,把mysql部署到别的机器上去
@rbb 明白了,感谢提供解决方案
24年的帖子噢,直接用red云数据库就好了价格也划算
这玩意说白了主要性能瓶颈是MySQL。不是大项目的话,还是优化一下SQL语句见效来的更快些哦。
使用协程主要还是用在http客户端请求更划算一些,否则多开几个workerman进程更划算(对比所节省下来的心智负担)