当我在 Microsoft Azure PAAS 中的共享环境中托管 Wordpress 时,我开始遇到非常烦人的停机时间,其中 PHP 在 IIS 下执行。
首先,我尝试优化插件和内存消耗,这无论如何都是好事。但问题仍然存在,所以我开始进一步挖掘。但我必须说,我对 Windows 和 IIS 不是很有经验。
话虽如此,我在日志中看到了很多这样的行。它们对我来说完全是模糊的,甚至谷歌也无法为我提供进一步的详细信息。
[11-Nov-2014 00:36:10 America/Los_Angeles] PHP Fatal error: Failure in PHP_MINIT_FUNCTION(Wincache): 212 in Unknown on line 0
[11-Nov-2014 00:59:42 America/Los_Angeles] PHP Fatal error: Failure in PHP_MINIT_FUNCTION(Wincache): 212 in Unknown on line 0
[11-Nov-2014 01:11:47 America/Los_Angeles] PHP Fatal error: Failure in PHP_MINIT_FUNCTION(Wincache): 212 in Unknown on line 0
[11-Nov-2014 01:15:07 America/Los_Angeles] PHP Fatal error: Failure in PHP_MINIT_FUNCTION(Wincache): 212 in Unknown on line 0
至少知道发生了什么事情会很好。这些错误会不会是我性能问题的根源?
答案1
我认为问题是高速缓存扩展,使用此扩展时存在一些问题 https://bugs.php.net/bug.php?id=58985,https://bugs.php.net/bug.php?id=59352和别的。
您可以尝试从代码中禁用:
ini_set('wincache.fcenabled','0');
还检查是否存在使用此扩展的某些插件。
我希望这有帮助
答案2
此错误:
PHP Fatal error: Failure in PHP_MINIT_FUNCTION(Wincache): 212 in Unknown on line 0
是FATAL_FILEMAP_CREATEFILEMAP
错误。当 WinCache 无法为其缓存(Opcode、文件、用户或会话)之一创建共享内存映射时,就会发生这种情况。如果页面文件已满,并且您指定了较大的缓存大小,则会发生这种情况。如果您指定的文件路径无法访问或不存在,也会发生这种session.save_path
情况wincache.filemapdir
。
来源:我是 WinCache 的现任所有者。