linux下安装opcache扩展

一个基于laravel框架的项目,运行总感觉有点慢,在了解完PHP7的新特性后,有一点点收获那就是--Zend Opcache(字节码缓存),那么它到底是什么呢?

一起来了解了解:

首先,它为什么叫字节码缓存?

 PHP是解释型语言,构建在Zend 虚拟机之上,PHP解释器在执行PHP脚本时会解析PHP脚本代码,把PHP代码编译成一系列Zend操作码,由于每个操作码都是一个字节长,所以又叫字节码,字节码可以直接被Zend虚拟机执行,然后执行字节码。

那它有什么作用?

 首先,我们先来了解一下PHP文件从请求到执行的这个过程,每次HTTP请求都必须不断解析、编译和执行PHP脚本,这样的话,每次请求相同的请求,仍然会消耗更多的资源。若是同样的请求我们将他编译的字节码缓存起来,那么,岂不是

会更快,这样的话,字节码缓存能存储预先编译好的PHP字节码,这样,下次请求PHP脚本时,PHP解释器不用每次读取、

解析和编译PHP代码,直接从内存中读取预先编译好的字节码,然后立即执行,这样能省很多时间,极大提升应用的性能

怎样安装呢?

linux环境下下载:

wget http://pecl.php.net/get/zendopcache-7.0.2.tgz
tarzxvf zendopcache-7.0.2.tgz
cdzendopcache-7.0.2
/usr/local/php/bin/phpize
./configure--with-php-config=/usr/local/php/bin/php-config
make&& makeinstall
ls/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
在PHP.ini添加如下代码:

[Zend Opcache]
zend_extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/opcache.so
opcache.memory_consumption=64
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.force_restart_timeout=180
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1

对于上面opcache的各项选项介绍,请参考:http://www.php.net/manual/zh/opcache.configuration.php

重启php,通过 phpinfo(); 或者linux 命令行PHP -i 查看php 配置

linux下安装opcache扩展_第1张图片






你可能感兴趣的:(运维,安全)