在我的开发中,如果更改很小,VM OPcache 不会使文件的缓存失效。似乎没有考虑更改之间的时间量。我经常需要添加一堆虚假注释(约 80 个字符)才能引起 OPcache 的注意。禁用 OPcache 后,问题就消失了。
我真的很想在我的开发虚拟机上启用 OPcache,因为它可以大大加快速度并使我与生产保持一致。我可以做些什么来确保 OPcache 在即使很少的字符更改后也会使文件失效?
PHP 5.5.14
Apache 2.4.9
Ubuntu 14.04
OPcache 设置:
opcache.enable = true
opcache.enable_cli = false
opcache.use_cwd = true
opcache.validate_timestamps = true
opcache.inherited_hack = true
opcache.dups_fix = false
opcache.revalidate_path = false
opcache.log_verbosity_level = 1
opcache.memory_consumption = 1024.00 = MB
opcache.interned_strings_buffer = 16
opcache.max_accelerated_files = 4000
opcache.max_wasted_percentage = 0.05
opcache.consistency_checks = 0
opcache.force_restart_timeout = 180
opcache.revalidate_freq = 0
opcache.preferred_memory_model
opcache.blacklist_filename
opcache.max_file_size = 0
opcache.error_log
opcache.protect_memory = false
opcache.save_comments = true
opcache.load_comments = true
opcache.fast_shutdown = true
opcache.enable_file_override = false
opcache.optimization_level = 4294967295
最佳答案
根据the current documentation , validate_timestamps
应该是 bool 值。您尝试过 1
吗?
可能也值得检查所有其他设置。
关于php - 文件大小变化较小时 OPcache 不更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27872730/