影响PHP模块性能的关键因素

影响前端PHP模块性能的关键因素不是语言本身(是否是PHP/JAVA/C都不重要)。那么到底影响PHP业务模块性能的关键因素在哪里呢?CPU耗时是统计一个项目性能的关键点之一。在我们系统中,CPU耗时重点以下几个方面:
1、  请求总时间。
2、  请求关键函数的性能,其中所有的socket交互都有耗时计算。
3、  模版渲染也是好事的一个关键点。
通过这个可以看出,在一个业务模块中,影响最大的是socket数据交互,其次是大量的字符串处理。具体细分来说是以下几个因素:socket交互次数、socket交互包大小、socket交互响应时间、字符串处理。
在前端业务模块中,PHP语言本身不会成为性能瓶颈。因为影响性能的几个关键因数是:
● 网络交互数目。
●  网络交互数据大小,包含数据打包解包开销。
● 网络交互响应时间。
●  大量的字符串处理。
结论
1、从PHP实现原理来看,PHP属于半编译型语言,并且在各个方面都进行了大量的优化工作,本身不会存在明显的性能问题。但由于动态语言的特性,决定了PHP需要运行在Zend Engine虚拟机上,并且在变量查找、函数调用、作用域切换等各个方面需要一些额外开销。
2、从PHP的基准性能来看,PHP本身不会存在明显的资源消耗,单机QPS能够轻松过W, PHP框架本身也不会对业务系统的性能带来关键性的影响。
3、从真实的应用场景来看,基于C语言实现的模块不见得比基于PHP实现的模块性能高效很多。因为在真实的应用场景中,更多的性能开销在于网络数据交互和字符串处理。语言方面微小的性能差异不会成为瓶颈。

猜你喜欢

转载自blog.csdn.net/oldthree1/article/details/17243399