APC,APCu和Opcache之间的区别?

mar*_*tyr 34 php caching apc opcache

我正在运行带有以下包的Web服务器; php-apc 3.1.7-1 php5-fpm 5.3.10-1ubuntu3.10

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

因此,APC是我的巨大流量的生命服务器(100 k /每日独特访问)

我对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 我正在为我的缓存运行这个免费课程,它确实在我的案例中保存了很多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
Run Code Online (Sandbox Code Playgroud)

这是否意味着默认启用OPcache?

mad*_*dog 20

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

如果您需要APC中不属于OPCache的特定功能(例如APCu功能),那么您应该开始讨论php-dev邮件列表.

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

  • @DaveMorton debian 方式是注释掉默认值,因此在这种情况下默认值为 0 并且默认情况下禁用 opcache (3认同)