废话杂谈系列 - 是否要用上Swoole?

昨日,有个PHPer问我给ThinkPHP、Swoole、Hyperf、Laravel 的性能排个序。 我 。。。

然后问我,有必要用Swoole吗?有必要常驻进程吗?我 。。。

接着说,Swoole会有问题,因为常驻进程会导致内存溢出。我 。。。

接着问,用上Swoole部署是个很大问题,是不是用脚本去重启?你们用k8s,负载均衡是不是要加很多副本。我 。。。

欢迎大家在下面评论说出你的观点吧。

本作品采用《CC 协议》,转载必须注明作者和本文链接
from crayxn github.com/crayxn
讨论数量: 18

PHP的内存溢出就不用说了,一定会存在

用PHP你就不要想性能,拿数据出来说话,做个站一天没人点一下,要性能有个屁用。

做个站每天几百亿访问,性能还是你需要考虑的问题吗。

有些人给语言站台跟粉丝一样玩了命的吹这个东西多牛逼,实际上自己都没啥大项目应用经验。

swoole也好,roadrunner也好,随便,不像我,我就只喜欢fpm

7个月前 评论
Crayxn (楼主) 7个月前

这个问题也就只有新手问的出来。

做编程一直都是效率说话,不论是生产效率,还是运行效率。

至于怎么权衡,是环境选择技术,不是先选择技术,然后去匹配环境。

比如做一个管理后台,日 PV 只有几千,你用 Dcat 一个人一天搞定。

但有的公司就喜欢前端用 AntDesign + 后端 PHP Swoole 写接口,怪不得技术成本高呢。

7个月前 评论
李铭昕

已经很久没碰过 FPM 了,你要问我为什么不用 FPM,那就是我使用 Swoole 做项目,速度不比使用 FPM 慢,性能更高,开销更小,为什么要使用 FPM 呢?

你问我为什么不用 Golang,我只想说废手,不如 PHP开发速度快。

6个月前 评论

PHP的内存溢出就不用说了,一定会存在

用PHP你就不要想性能,拿数据出来说话,做个站一天没人点一下,要性能有个屁用。

做个站每天几百亿访问,性能还是你需要考虑的问题吗。

有些人给语言站台跟粉丝一样玩了命的吹这个东西多牛逼,实际上自己都没啥大项目应用经验。

swoole也好,roadrunner也好,随便,不像我,我就只喜欢fpm

7个月前 评论
Crayxn (楼主) 7个月前

我认为技术好的人, 他自己是了解每个技术栈的优缺点。 他能根据实际情况,选择合适的技术进行开发。

更多的情况都是不怎么会, 对各种技术都只是略懂, 然后开始夸夸其谈。

说实话我觉得 ThinkPHP、Swoole、Hyperf、Laravel 都挺好的。都在某个方向上解决了某一类问题, 内些问题在他们之前没人解决过, 真的 respect 。

7个月前 评论
徵羽宫 (作者) 7个月前

能问是否要用上Swoole?大概就是初级中级水平,老老实实用tp吧

7个月前 评论

在Swoole和golang的选择上,我选择了golang,如果非要在PHP上面做,可以试试webman

7个月前 评论

ThinkPHP、Swoole、Hyperf、Laravel 这几种框架,大致分为两派,php-fpmphp-extension, 前者依靠 Nginx 后者依赖 C/C++ 扩展;一个多进程,一个常驻进程;生态上也有很大区别,解决的业务场景也不太一样。 就看开发场景需要哪一种了。

而且各个框架也有一些优点,就看你哪个用的顺手了,能解决需求就没问题。

7个月前 评论

这个问题也就只有新手问的出来。

做编程一直都是效率说话,不论是生产效率,还是运行效率。

至于怎么权衡,是环境选择技术,不是先选择技术,然后去匹配环境。

比如做一个管理后台,日 PV 只有几千,你用 Dcat 一个人一天搞定。

但有的公司就喜欢前端用 AntDesign + 后端 PHP Swoole 写接口,怪不得技术成本高呢。

7个月前 评论

php常驻进程就一定会内存泄漏吗?不见得,这也得看你是如何写的代码了。

7个月前 评论
狒狒达人 7个月前
cevin 7个月前

有必要上swoole 的, 性能上 swoole 强, 技术上 你肯定能成长, 简直是双赢啊

7个月前 评论
徵羽宫 7个月前
狒狒达人 (作者) 7个月前
GDDD

webman了解下

7个月前 评论

这个还是很好分类吧

  • 具备一些底层知识,需要网络编程、异步编程,控制粒度细,自由定制,高性能用swoole
  • 知识储备不够,但需要网络编程,可兼容当前composer生态,用workerman
  • 其他用fpm

题外话,这都是入门该掌握的东西,都会了就不会有这么多疑问了

6个月前 评论

其实静态变量少干点, 很大的情况下不会内存溢出

6个月前 评论
李铭昕

已经很久没碰过 FPM 了,你要问我为什么不用 FPM,那就是我使用 Swoole 做项目,速度不比使用 FPM 慢,性能更高,开销更小,为什么要使用 FPM 呢?

你问我为什么不用 Golang,我只想说废手,不如 PHP开发速度快。

6个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!