前两天被问到了问题,关于 OPcache 我配置过有多少?当时简单的想了一下,貌似这个东西我没配置过几个,就说了调整了五六个选项。然后又大概说了一下这五六个都调整了什么,我就说了一下缓存时长,跳过文件,内存大小,文件数量什么的。因为自己印象里面貌似能记住的就这几个了,然后对方告诉我 OPcache 有 30 多个可调整选项。说实话,我当时都惊了,这么多!!! 事后回家翻了一下我自己的配置部分,发现我配置的也有十几个了,但是分类呢,也就是我上面说的那几个。所以呢,今天就重新翻了一波文档,并且结合自己的理解,说说自己配置过的部分。以及没有接触的东西。看看能不能也加入到自己的配置中去。
OPcache 文档简介:
OPcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。
这是说啥呢,直白点就是空间换时间,把代码预编译并且存储到内存中。节省的时间就是解析 PHP 脚本的时间,但是加载部分虽然也有节省,但是依然还是有加载时间的,不过就是从磁盘换到了内存。另外加载到内存中是占用内存的哟,也就是说单机的处理能力随着缓存的增长会有变小。所以这个内存值的设置要根据实际逐步调整。
另外,关于新增的 preloading,可以看这个文章,我觉得写的挺好的 https://blog.youkuaiyun.com/qmhball/article/details/103503939