![](https://img.php.cn/upload/article/000/000/029/5da94a9376fbc237.jpg)
PHP本身很快
PHP往往比Python或者Ruby快个几倍,PHP数组是C写的,还经过了十几年的优化,PHP常用函数也都是C写的,操作数组或者调用这些标准库函数的时候,除了调用开销外,执行函数本身是就是C的速度。 (推荐学习:PHP视频教程)
PHP框架很薄
很多人完全不用框架,从FPM进来直奔主题,没有抽象封装带来的多余动作,比如说
URL路由在Nginx中已经简单处理好了,也不用捕获请求路径中的变量。
不需要session的时候,它不会自动给你获取session,session是很重的。
不用做身份认证的时候,也不需要框架里常见的auth那部分处理流程。
没有层层的beforeXXX和afterXXX,跳过了那一大堆HOOK方法。
以上框架常用功能,每一样都有厚重的框架自身的初始化操作,一旦用了,就会严重降低性能。现在比较主流的PHP框架,如Laravel和Codeigniter就是典型代表,性能大致是这样的,一个简单的hello world,每个CPU核心能负担的QPS
下一代PHP运行方式
还有不到10%的PHP用户,在特别需要性能又必须用PHP的时候,选择了Swoole,它不同于FPM,swoole本质是CLI运行,比较耗时的协议解析和常规处理,都是C写的扩展里做好了。
Swoole在继承了PHP7的高性能的同时,还把FPM模式下每个请求框架要重新初始化的缺陷彻底解决掉了。然后选择Swoole的同时,仍然可以保持只用薄框架甚至不用框架,那速度是不是要起飞了?
在Swoole这种运行模式下,你可以把PHP看作是一个C写的应用带的配置文件,有什么理由比那些竞争对手慢呢?应该比那些对手们更快才对。如果给Laravel适配上Swoole,那绝对是另一番景象。
从开发效率上看,我个人身上,PHP大概比Java快10%左右吧,写的时候是PHP快,但是改起来却稍稍费事一些,要理清嵌套好几层的数组的结构,不如Java里直接跳转到明确的类型定义来的方便。加上编译器的存在,又消灭了一些低级bug。Java的标准库设施,文档和参考资料要远多于Swoole,这方面又缩小了开发效率上的差距。
以上就是php开发快吗的详细内容,更多请关注php中文网其它相关文章!
![php中文网最新课程二维码](/static/images/article_wechat2021.jpg?1111)
声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
- 上一篇:php进程还是线程
- 下一篇:比较html与php的异同是什么?
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论