opcache 参数说明 --转自https://www.cnblogs.com/tudou1223/p/5362785.html
PHP的opcode缓存又出了新成员(说新不新,也有一段日子了),那就是opcache。新浪微博等都在使用,惠新宸老师强力推荐。本人最近根据官网地址(http://www.php.net/manual/zh/book.opcache.php)整理了一下,其安装非常简单,5.5.0 后将自动在php内核中,不必单独安装,之前的版本的安装也同其它php扩展一样,源码地址http://pecl.php.net/package/ZendOpcache,就不赘述了。
那么在安装后如何使用并配置opcache,使之能更好地为我们服务呢?整理了一下其在php.ini中各参数的使用说明,供大家参考,有一些不太懂的,就留空了,还请高手赐教。
名字 | 默认 | 可修改范围 | 含义 |
---|---|---|---|
opcache.enable | "1" | PHP_INI_ALL | 是否启用opcache |
opcache.enable_cli | "0" | PHP_INI_SYSTEM | 是否在CLI(即命令行时)启用opcache |
opcache.memory_consumption | "64" | PHP_INI_SYSTEM | 为opcache分配多少共享内存,单位M |
opcache.interned_strings_buffer | "4" | PHP_INI_SYSTEM | interned string的内存大小 |
opcache.max_accelerated_files | "2000" | PHP_INI_SYSTEM |
最大缓存的文件数目。 实际上这个值会使用第一个大于你配置的数字的下列素数 { 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987 }, 如你将该值指定为400,则实际上该值为463. |
opcache.max_wasted_percentage | "5" | PHP_INI_SYSTEM | |
opcache.use_cwd | "1" | PHP_INI_SYSTEM |
如果置为1,则将当前路径加入到文件key中, 以避免可能产生的同文件名的文件key冲突 |
opcache.validate_timestamps | "1" | PHP_INI_ALL |
如果置为1,则OPCACHE会自动检测文件的时间戳 (检测周期为revalidate_freq), 并根据文件的时间戳来更新opcode,如果置为0, 则只能手动去重启opcache或 重启webserver以使更新后的php文件生效 |
opcache.revalidate_freq | "2" | PHP_INI_ALL |
opcache自动检测文件是否更新的周期,单位秒。 如果是0,则每次请求时opcache都要进行检测。 当validate_timestamps为0时,本指令无效。 |
opcache.revalidate_path | "0" | PHP_INI_ALL | |
opcache.save_comments | "1" | PHP_INI_SYSTEM | 是否保存文件中的注释 |
opcache.load_comments | "1" | PHP_INI_ALL |
是否load comments,与save_comments联合起来使用, 如果该值为0,则即使save_comments为1, 那么php脚本中的comments也是不使用的 |
opcache.fast_shutdown | "0" | PHP_INI_SYSTEM |
是否打开快速关闭, 打开时可使php在request shutdown时回收内存快 |
opcache.enable_file_override | "0" | PHP_INI_SYSTEM |
如果置为1,则每次调用file_exist() is_file() is_readable()函数时, opcache将要检查该文件是否被cache了, 这样增加了检查存在性和可读性的开销, 但避免了当validate_timestamps为disable时返回错误文件状态的风险。 |
opcache.optimization_level | "0xffffffff" | PHP_INI_SYSTEM | 运行时控制优化的掩码(干什么的?) |
opcache.inherited_hack | "1" | PHP_INI_SYSTEM | 5.3以前使用。5.3后废弃 |
opcache.dups_fix | "0" | PHP_INI_ALL | 为解决“cannot redecllare class" 时,可将其置为1 |
opcache.blacklist_filename | "" | PHP_INI_SYSTEM |
设置黑名单文件,符合黑名单文件中定义的php文件将不被opcache。黑名单文件的例子如下:
|
opcache.max_file_size | "0" | PHP_INI_SYSTEM | 被cache的文件的最大size,单位bytes。0表示不限 |
opcache.consistency_checks | "0" | PHP_INI_ALL |
如果置为N,N非零,则opcache会每N个请求核实一下cache的检验和。 这会损害性能,应该只在debug时使用 |
opcache.force_restart_timeout | "180" | PHP_INI_SYSTEM | 如果opcache处于非active状态,当N秒后opcache将自动重启 |
opcache.error_log | "" | PHP_INI_SYSTEM | opcache自身的errorlog文件路径,为空时则使用stderr |
opcache.log_verbosity_level | "1" | PHP_INI_SYSTEM | 日志记录level,默认只有fatal error和error |
opcache.preferred_memory_model | "" | PHP_INI_SYSTEM |
opcache首选使用的内存模型,为空时会选择最适当的模型。 常用的有,mmap shm posix 和win32 |
opcache.protect_memory | "0" | PHP_INI_SYSTEM |
运行php脚本时保护共享内存防止意外的写入。 只对debug时有用。 |
opcache.mmap_base | NULL | PHP_INI_SYSTEM |
opcache 参数说明 --转自https://www.cnblogs.com/tudou1223/p/5362785.html的更多相关文章
- 访问路径:https://i.cnblogs.com/posts?categoryid=925678
https://i.cnblogs.com/posts?categoryid=925678
- URL https://i.cnblogs.com/EditPosts.aspx?opt=1
URL url = new URL("https://i.cnblogs.com");URL url1 = new URL(url, "EditPosts.aspx?op ...
- 随笔二-https://www.cnblogs.com/shang1680/p/9657994.html
作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...
- 211806189杨昊辰 https://www.cnblogs.com/honey1433223/
211806189杨昊辰 https://www.cnblogs.com/honey1433223/
- https://www.cnblogs.com/h2zZhou/p/5440271.html
https://www.cnblogs.com/h2zZhou/p/5440271.html
- https://www.cnblogs.com/soundcode/p/4174410.html
https://www.cnblogs.com/soundcode/p/4174410.html 1.首先要在服务器端新建一个网站axpx页 然后再网站的后台写代码获取winform传过来的文件名. ...
- https://www.cnblogs.com/yudanqu/p/9467803.html
https://www.cnblogs.com/yudanqu/p/9467803.html
- 转发自:一像素 十大经典排序算法(动图演示)原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删
原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删 0.算法概述 0.1 算法分类 十种常见排序算法可 ...
- @无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 通篇引用
无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 关于Async与Await的FAQ 关于Async与Await的 ...
随机推荐
- TCP学习总结(一)
在学习的过程中,相信大家都有过“学了就忘“这种经历,又特别是TCP/IP知识点密集的通信协议,所以在此总结一下自己学到的皮毛,希望对自己对大家也有所帮助. 这篇博客主要讲运输层TCP和UDP的东西,I ...
- 精进之路之HashMap
HashMap本质的核心就是“数组+链表”,数组对于访问速度很快,而链表的优势在于插入速度快,HashMap集二者于一身. 提到HashMap,我们不得不提各个版本对于HashMap的不同.本文中先从 ...
- WORD中引用活动文档元素
要引用活动的段落.表格.域或其他文档元素,可使用 Selection 属性返回一个 Selection 对象.通过 Selection 对象,可访问选定内容中的所有段落或第一段.下列示例将边框应用于选 ...
- windows平台python svn模块的一个小 bug
环境 编程语言版本:python 2.7 操作系统:win10 64位 模块名:svn svn checkout时报错 File "D:\Python27\lib\site-package ...
- python安装后环境变量的设置
win7系统中单击右击计算机->属性->高级系统设置->环境变量 在path目录下用分号分开做分割添加环境变量. 如果同时添加python2.x.x版本和python3.x.x版本两 ...
- java 对同一个文件进行读写操作
同一个文件是不可以进行同时的读写的,因为我们写入文件会覆盖原文件的,如果这样,对于同一文件来来说,文件发生覆盖,无法进行下次读取 当然,对于两个不同的文件,可以一边读一边写的操作 题目:一个文本中存储 ...
- iOS跳转第三方应用举例一号店和京东
1.首先要跳转到第三方应用都需要知道第三方应用的scheme,虽然百度能得到很多,但是不乏一些新增的或者改了的,怎么获得APP的scheme,鉴于现在iTunes不好用了,介绍一个app ---app ...
- CSV空行问题
当写入CSV时生成的数据会有空行如果加入 newline =‘’ 不会新增空行 writefile = open('result.csv','w',newline =‘’) 原贴 https://bl ...
- plsql插入数据出现乱码问题
今天在使用plsql 插数据时 ,遇到的问题就是插入进去是乱码问题,在这里总结一下如何解决的 首先声明一下就是: 现在只有客户端,没有服务端,有一些需求就是总是有许多数据要插入进去,但是在使用sql语 ...
- 几个NAND/NOR门可以表示一个XOR门?
这段时间就是在看测试相关的东西,无意之中发现了ISCAS85中有个名词EXOR,愣了一下反应过来应该还是异或门,毕竟叫exclusive-OR gate,其中文档中还提到了一句一个异或门可以由四个与非 ...