php - APC、APCu 和 Opcache 的区别?

标签 php caching apc opcache

我正在使用以下软件包运行 Web 服务器; php-apc 3.1.7-1 php5-fpm 5.3.10-1ubuntu3.10

但是,我在 Ubuntu 14.04 上构建了一个新服务器,似乎 php-apc 不再可用。

因此,APC 是我巨大流量(每天 10 万次独立访问)的生命服务器

我对 PHP 的缓存机制有点困惑。 新服务器包括以下软件包: php-apc 4.0.2-2build1 php5-apcu 4.0.2-2build1 php5-fpm 5.5.9+dfsg-1ubuntu4.7

phpinfo() 给我模拟的“apc”。据我了解,APC 已被 APCu 取代。

https://github.com/cepa/kickasscache 我正在为我的缓存运行这个免费的类(class),在我的情况下它确实节省了很多 cpu/mem。 但我不明白这是否与 APCu 相同?

如果不是,我该如何设置正确的缓存? 因为我的新服务器资源有限,我需要一个解决方案。

php -v 返回

PHP 5.5.9-1ubuntu4.7 (cli) (built: Mar 16 2015 20:47:39)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

是不是默认开启了OPcache?

最佳答案

从 PHP 5.5 及更高版本开始,不再需要 APC(或任何类似的字节码缓存扩展,如 XCache)。 PHP 开发人员直接将他们称为 OPCache 的东西集成到产品的核心中。这不仅提供了更高的整体产品稳定性,而且得到了 PHP 开发人员的正式支持。

如果您需要 APC 提供的 OPCache 中没有的特定功能(例如 APCu 功能),那么您应该在 php-dev 邮件列表上开始讨论。

最后,一个好的经验法则是只运行 php.net 主页上列出的 PHP 版本。虽然发行版通常会向后移植安全修复程序,但较新版本的 PHP 具有更多有用的功能。较新版本的 PHP 通常也具有显着的性能优势,可以让您绕过需要额外的 PECL 扩展,例如 APCu。

关于php - APC、APCu 和 Opcache 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29187601/

相关文章:

php和mysql搜索用户

php - 重定向时,codeigniter Controller 名称在地址中出现两次

php - 如何防止 PHP 中的 SQL 注入(inject)?

xml - Apache 文件缓存

php - 当有数量和价格时,在 eloquent laravel 中使用 sum

javascript - 通过特定查询或突变重置缓存

php - 在数据库或文件系统中缓存 API 响应

用于 Windows xampp 的 php-apc

php - 使用 apc_store 与 apc_add 相比有什么性能优势(反之亦然)?

php - 调用未定义的函数 apc_clear_cache()