您现在的位置是:网站首页> 编程资料编程资料
php7性能提升的原因详解_php技巧_
2023-05-25
291人已围观
简介 php7性能提升的原因详解_php技巧_
为什么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性能提升的原因的详细内容,更多请关注其它相关文章!
相关内容
- php抽象方法和普通方法的区别点总结_php技巧_
- php use和include区别总结_php技巧_
- 阿里对象存储OSS在laravel框架中的使用方法_php实例_
- laravel框架 laravel-admin上传图片到oss的方法_php实例_
- laravel实现一个上传图片的接口,并建立软链接,访问图片的方法_php实例_
- laravel实现上传图片的两种方式小结_php实例_
- laravel 修改.htaccess文件 重定向public的解决方法_php实例_
- 浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法_php实例_
- laravel 去掉index.php伪静态的操作方法_php实例_
- laravel5环境隐藏index.php后缀(apache)的方法_php实例_
