![]() |
1
3
取决于您所说的缓存类型。操作码缓存和你说的完全一样。它获取操作码并对其进行缓存,这样每当用户访问某个特定页面时,如果该页面的操作码已经编译并在缓存中,则不需要重新编译该页面。如果修改一个PHP文件,缓存机制将检测到这一点,并重新编译代码并将其放入缓存中。 如果你说的是在页面上缓存数据,这完全不同。 看看 Alternative PHP Cache 有关操作码缓存的详细信息。 |
![]() |
2
2
你所描述的是 PHP accelerator 它们完全按照您所说的做;存储缓存的、编译的字节码,以便同一脚本的多次执行只需要一次编译。 也可以缓存执行PHP脚本的结果。这通常至少需要一点逻辑,因为页面的内容可能在缓存后发生了更改。例如,您可以查看 general cache feature provided by CodeIgniter . |
![]() |
3
1
Peter D's answer 很好地覆盖了操作码缓存。如果您的页面很简单,这可以节省超过50%的页面生成时间(主观)! 您想要了解的另一个缓存是数据缓存。这可能是缓存数据库结果集、Web服务响应、HTML块甚至整个页面! 一个简单的“例子”应该说明:
有一些库可以帮助进行对象、函数和页面级缓存。 Zend Framework's Zend_Cache 组件是思想的食物,如果您喜欢所看到的,它是一个很好的实现。 |
![]() |
4
0
实际上有几种不同的缓存形式。您所指的是由诸如 eAccelerator , MMCache 等。 虽然这对某些人有帮助,但真正提高性能的地方是实际缓存HTML输出(如果适用),或者缓存用于重复查询的DB结果集(例如 memcache ) 安装任何操作码缓存机制都非常简单,但我引用的其他两个缓存区域将为您带来更大的性能优势。 |
![]() |
tincho87 · 避免Javascript/Css缓存 6 年前 |
![]() |
Zac · 如何强制客户端重新下载我的网站? 6 年前 |
![]() |
Kumar · bitbake清理使用只读NFS SSTATE缓存失败 6 年前 |
![]() |
Chris Williams · 休眠/JPA缓存查找值 6 年前 |
![]() |
Nymeria · 仅绑定到当前事务的Spring缓存 6 年前 |