我想我对“Zend Opcache”实际上是如何工作有一些疑问,我想知道我应该如何通过PHP include()
方法仅在缓存中保存我包含的文件?似乎即使不指定opcache_compile_file()
所有文件都被缓存,包括“index.php”,我不想这样做。事实上,我在索引中分配的所有变量都不会为每个会话刷新,但我只看到索引的缓存版本。
谁能解释一下?
提前致谢
答案 0 :(得分:1)
Zend OpCache只是PHP操作码的缓存,可以使处理器不必将源代码转换为操作码,直到它(源代码)发生变化。如果您需要对脚本使用的数据进行用户空间缓存,请使用APCu。当您说您的vairables没有刷新时,您的Web服务器前面是否有反向代理?
答案 1 :(得分:1)
我曾经有同样的问题,我想出了这个解决方案: 在opcache配置中,我将opcache.blacklist_filename设置为外部黑名单文件的路径,在那里我写了我不想要缓存的类的名称。 有关详细信息,请参阅此处的文档http://www.php.net/manual/en/opcache.configuration.php#ini.opcache.blacklist-filename