PHP7达到高性能tips

PHP 首发通告,1995年6月8日。PHP 7 比5.x 快上很多,为了让让它发挥更大性能。Let's try it

1. PHP加速器开启

PHP加速器是为了提高PHP执行效率,从而缓存PHP的操作码,后续操作不再需要解析转换,可直接调用PHP操作码。

常见加速器:Opcache、APC、eAccelerator、XCache

详见LNMP执行流程

2. 使用新编译器

推荐GCC 4.8以上, 因为只有GCC 4.8以上PHP才会开启Global Register for opline and execute_data支持, 这个会带来5%左右的性能提升

3. HugePage

HugePage说明:PHP默认的内存是以4K分页,而虚拟机和内存地址需转换,该转换需查询表,CPU为加速查询都会内建TLB(Translation Lookaside Buffer)。虚拟页越小,表里条目越多,条目数越多TLB的Cache Miss也就会越高。但TLB大小是有限,启用大内存页就能间接降低这个TLB Cache Miss。

    $ cat /proc/meminfo  | grep Huge
    AnonHugePages:    106496 kB
    HugePages_Total:     512
    HugePages_Free:      504
    HugePages_Rsvd:       27
    HugePages_Surp:        0
    Hugepagesize:       2048 kB

4. Opcache file cache(实验性)

开启这个, 我们可以让Opcache把opcode缓存缓存到外部文件中, 对于一些脚本, 会有很明显的性能提升

#php.ini 开启
opcache.file_cache=/tmp

这样PHP就会在/tmp目录下Cache一些Opcode的二进制导出文件, 可以跨PHP生命周期存在。

5. 单项目PGO

参考源:

  1. 让PHP7达到最高性能的几个Tips
  2. 雅虎34条军规

你可能感兴趣的:(PHP7达到高性能tips)