最新版本的PHP有一个文件名缓存,用于了解文件的真实路径,require_once()
和include_once()
可以利用它。
您可以在 php.ini 中设置一个值来设置缓存的大小,但我不知道如何判断大小应该是多少。默认值是16k,但我看不出有什么方法可以告诉我们正在使用多少缓存。文档含糊不清:
是的,我可以增加允许的缓存量,并使用ab
或其他一些测试运行测试,但是我想要一些内省,而不仅仅是从远处进行计时。
答案 0 :(得分:4)
您可能已经找到了这个,但对于遇到此问题的人,您可以使用realpath_cache_size()和realpath_cache_get()来确定您的网站上使用了多少realpath缓存并相应地调整设置
答案 1 :(得分:3)
虽然我无法提供适合您情况的任何内容,但我的理解是,对于大多数较大的PHP应用程序(特别是使用Zend Framework等框架的应用程序),16k相当低。如果你的应用程序使用了大量的包含,那么我要说至少是缓存大小的两倍,并看看从哪里开始。只要您的目录结构非常一致,您可能还希望增加TTL。
答案 2 :(得分:-3)
16K是非活动的文件数。
大多数网站设置为1k。与APC,xcache等中的设置非常相似。