为什么PHP7的性能可以提高这么多-创新互联

这篇文章给大家分享的是有关为什么PHP7的性能可以提高这么多的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及成都iso认证等,在网站建设成都营销网站建设、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。

为什么PHP7的性能可以提高这么多?


1. JIT
2. Zval的改变
3. 内部类型zend_string
4. PHP数组的变化(HashTable和Zend Array)
5. 函数调用机制(Function Calling Convention)
6. 通过宏定义和内联函数(inline),让编译器提前完成部分工作

为什么PHP7的在实际的业务性能提高才30%左右?


实际的业务不一定有很复杂的计算逻辑


实际的业务会用到Redis 和MYSQL,网络和IO的瓶颈 影响了PHP7的整体性能


HTTPS的性能问题 限制了PHP7的能力


Redis Proxy的问题


Redis Proxy目的是为了做Redis高可用&分布式缓存用的


经过性能测试,相对直接连接redis而已,用Proxy的性能损耗在10-15%左右(不同的业务 可能影响有比较大的差异)

那么Proxy是不是还有优化的空间的呢?

PHP和Redis长短链接的问题


PHP7 Redis长连接比短连接性能高10%左右(不同的业务差别比较大

PHP7性能提升原因总结:

1、存储变量的结构体变小,尽量使结构体里成员共用内存空间,减少引用,这样内存占用降低,变量的操作速度得到提升。

2、字符串结构体的改变,字符串信息和数据本身原来是分成两个独立内存块存放,php7尽量将它们存入同一块内存,提升了cpu缓存命中率。

3、数组结构的改变,数组元素和hash映射表在php5中会存入多个内存块,php7尽量将它们分配在同一块内存里,降低了内存占用、提升了cpu缓存命中率。

4、改进了函数的调用机制,通过对参数传递环节的优化,减少一些指令操作,提高了执行效率。

感谢各位的阅读!关于“为什么PHP7的性能可以提高这么多”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


当前标题:为什么PHP7的性能可以提高这么多-创新互联
文章源于:http://azwzsj.com/article/eiocj.html