php - APC 延迟加载是否会提高性能?

标签 php performance lazy-loading apc

PHP 的 APC 扩展包括两个配置设置,用于启用函数和类的延迟加载; apc.lazy_functionsapc.lazy_classes

我的网站使用具有显着性能优势的 APC。他们还在不同时间启用和禁用延迟加载设置,没有明显的区别。

在互联网上,除了讨论之外没有太多关于这个主题的内容,但没有衡量标准。

有没有人实际测量过使用 APC 延迟加载对性能的影响,或者是否有人注意到使用这些设置的显着差异? 什么时候启用延迟加载是有利的?什么时候应该不惜一切代价避免它?

最佳答案

这完全取决于您使用 APC 的应用程序类型。

大多数框架都包含自动加载 one way 中的类或 another .这基本上意味着 apc.lazy_functionsapc.lazy_classes 的 apc 设置在按需动态包含/需要的类的上下文中是多余的。

PHP 的编码标准发生了变化,尤其是在接受 PSR-1 Coding Standard 之后,框架不仅实现了自动加载,而且确保每个文件只定义一个类。

这反过来意味着 apc.lazy_classes 仅在使用时从包含的文件中复制类,但当前的编码标准确保文件根据需要包含,并且包含的​​文件仅定义一个类,即立即使用。

apc.lazy_functionsapc.lazy_classes 与其他(较旧的)项目一起使用,可能会得到更好的结果。


但是,关于 apc.lazy_functions,该设置仅涵盖文件中定义的全局范围函数。不是类的个别方法。 The nomenclature可能会产生误导,但类函数被独特地称为方法

关于php - APC 延迟加载是否会提高性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14397321/

相关文章:

php - 使用 laravel php-mysql 在一段时间内仅更改一次字段值

emacs - 定义符号后的 Eval 形式

php - Laravel:通过请求验证更新数据不更新数据

php - 使用 GD 和 libjpeg 支持编译 PHP

java - 从 multimap 列表中删除元素的最佳方法

c - arc4random_buf 是否有最佳批量大小?

python - 仅在面板调整大小事件结束时重新绘制图形

.NET 多层设计 LINQ

Hibernate 批量获取到延迟加载

php - 使用 PHP 的 AJAX 代理,这可能吗?