php - 什么是 PHP 中的 userland 缓存 APCu 扩展?

标签 php opcache

只是一个与OPcache有关的问题,因为我没有理解它并在Google上找到了答案:

当我们谈论用户态缓存时,它是什么意思?我知道 PHP 与新的 Zend OPcache 扩展预先捆绑在一起,并且该扩展将操作代码缓存到 ram 中,以免对处理器造成太大压力,该处理器应在每次请求时将 PHP 源转换为操作代码, 但是当他们说 APCu 实现了用户级缓存时呢?

什么是用户态缓存?是否可以将 APCu 和 Zend OPcache 保持在一起?应该使用 Zend OPcache 代替 APCu 吗?

最佳答案

APCu其实是Joe Watkins为了应对OPcache而开发的。 APC同时支持操作码缓存和数据缓存,但是从PHP 5.4开始支持操作码缓存一直存在稳定性问题。在 Zend Inc 开放 Opcache 的源代码并将其置于 PHP 许可之下后,它从 PHP 5.5 开始成为核心和首选的操作码缓存。 但是它只支持操作码缓存,不支持数据缓存。

Joe 的 APCu 本质上是 APC 的精简版,它只包含数据缓存代码,旨在您需要数据缓存时与 OpCache 一起使用。

请注意,虽然操作码缓存在源代码级别是透明的,但数据缓存不是。您的应用程序需要明确编码才能使用它。 (虽然标准的 PHP 应用程序,如 Wordpress、Drupal、phpBB、MediaWiki 等默认包含此支持)。

关于php - 什么是 PHP 中的 userland 缓存 APCu 扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27205809/

相关文章:

php - PHP 5.5.5 可以从 OPcache 加载 Phar 文件吗?

php - 如何对现有的 PHP MYSQL 分页脚本实现 Ajax/JQuery?

php - 如何获取mysql中每组的最低值

php - ffmpeg响度不返回任何文件

php - 无法在 Centos 6.4 上安装 php 5.5 opcache

php - APC、APCu 和 Opcache 的区别?

php - 如何shell脚本将多行文本写入从mysql读取的文件?

php - 更新 mysql 数据库中的记录时,bind_param() 出错

php - 如何使用 ZendOpCache 作为 Doctrine2 缓存?

php - 当我打开 php opcache 时,Doctrine 吓坏了