也许这是一个愚蠢的问题,但在我的页面末尾,我将所有变量设置为 null 然后取消设置它们,以提高性能,尽管我知道它可能对性能几乎没有影响,但即便如此,这会对任何缓存模块(例如 varnish、apc 或 memcached)有任何影响吗?
问问题
182 次
1 回答
2
除了(也许)垃圾收集之外,它不会影响任何东西。看看这里APC 是如何工作的。大多数其他缓存插件的工作方式相同。
您会注意到像 APC 这样的缓存器(顺便说一句,memcached 与这个问题无关 - Varnish 也没有)仍然解析所有 PHP。唯一可以取消设置变量的事情是导致垃圾收集器启动。如果 GC 启动,您可能会看到减速(然后加速)。话虽如此,但它并不是很确定。通常 PHP 在垃圾收集方面做得很好,所以除非你试图模拟某种 RAII 行为,否则你不应该担心它。
Varnish 是一个 HTTP 加速器(与 PHP 无关)。memcached 是一个分布式的基于内存的信息存储(它也与 PHP 的内部工作无关)。
于 2011-05-20T00:35:58.947 回答