【发布时间】:2014-05-11 10:19:12
【问题描述】:
我花了很多时间来完成 wincache 工作,因为我在 Symfony 2 中的应用程序在我的 Windows 8 上运行缓慢(初始化时间 > 2 秒)。 Wincache解决方案在这里创立https://stackoverflow.com/a/9487264
IIS 已安装且位于 phpinfo() 中。但问题是我的应用程序仍然很慢。我试图搜索有什么问题,看起来 reroute.ini 根本没有加载,即使它在 php.ini 中
wincache.rerouteini="C:\Program Files (x86)\iis express\PHP\v5.5\reroute.ini"
但它在 phpinfo() 中缺失
我什至查看了pecl上的源代码,我发现
#ifdef WINCACHE_TEST
/* index 21 */ STD_PHP_INI_ENTRY("wincache.rerouteini", NULL, PHP_INI_SYSTEM, OnUpdateString, rerouteini, zend_wincache_globals, wincache_globals)
/* index 22 */ STD_PHP_INI_ENTRY("wincache.olocaltest", "0", PHP_INI_SYSTEM, OnUpdateBool, olocaltest, zend_wincache_globals, wincache_globals)
#endif
那是什么?这意味着仅当常量 WINCACHE_TEST 为真时才存在此选项?因为那从来没有,因为我也发现了这个
#ifdef WINCACHE_DEBUG
# define WINCACHE_TEST
# define _ASSERT(x) if(!(x)) { dprintalways(#x); if(IsDebuggerPresent()) { DebugBreak(); } }
#else
# define _ASSERT(x)
#endif
并且常量WINCACHE_DEBUG在上面的代码中被注释掉了
/* comment following line for release builds */
/* #define WINCACHE_DEBUG */
/* #define DEBUG_DUMP_OPARRAY */
这是错误吗?我只想让 reroute.ini (http://www.php.net/manual/en/wincache.reroutes.php) 工作。那是可以将初始化时间缩短 4 倍的选项,请帮助解决我的问题,或者在此处向我发送 PHP5.5 VC11 NTS 版本的功能性 wincache 扩展,谢谢!
【问题讨论】:
-
您对此有什么具体的编程问题? “无法正常工作” 和 “这是错误吗?” 不足以描述问题。还像你用 "end me functional wincache extension here for PHP5.5 VC11 NTS version, thx!" 一样要求场外资源,最后是题外话。
-
问题是,在没有功能性重新路由的情况下安装了它的wincache绝对没有效果。现在我有初始化时间~2s,应该是~500ms。这应该通过 reroutes.ini 中的优化函数来完成,但它们根本没有加载。
-
嗯,这不是编程问题。只是你假设的结果比你在现实生活中得到的更快。然而,这本身并不是一个问题的迹象,它可能只是一个你期望错误的问题。例如。谁说它应该是~500ms?以及为什么。然后检查您的系统是否支持该原因。
-
"例如,谁说它应该是 ~500 毫秒?"例如这里stackoverflow.com/questions/7741043/…
-
或者例如当我尝试 ubuntu virtual box 时它不到 500 毫秒。都是关于像file_exists()这样的IO函数,wincache应该用自己的内部函数来解决这个问题,但是甚至没有加载reroutes。
标签: php windows symfony iis iis-7