如何在 Ubuntu Server 10.04 上为 PHP 设置 Memcached/APC?

如何在 Ubuntu Server 10.04 上为 PHP 设置 Memcached/APC?

我很快将在全新 Ubuntu Server 10.04 VPS 上设置 Simple Machines 论坛。论坛软件是用 PHP 编写的。我将使用 Nginx 作为 Web 服务器,并按照指南在其上安装 PHP-FPM:http://constantshift.com/install-php-fpm-5-3-2-on-ubuntu-10-04-lucid-lynx/

但该指南并没有真正解释如何设置 Memcached 或 APC 进行缓存。在浏览了整个网络、搜索了这个网站并搜索了 Stack Overflow 之后,我仍然不知道如何成功设置它们。

有人能提供信息、指南和链接吗?非常感谢。

答案1

首先,确定您是否需要 memcached。APC 既是一个“加速器”(一个操作码缓存,相当透明),又是一个缓存解决方案(提供代码需要写入/读取的内存数据存储)。memcache 只做后者。

通常需要 memcached 的唯一原因是您要运行多个需要从同一缓存读取/写入的服务器。只要您只运行单个 Web 服务器主机,APC 就可以解决问题。

安装 APC 非常简单。

[root@host]# pecl install apc     #or sometimes pecl install apc-beta
[root@host]# service php5-fpm start

您可能会注意到,仅使用 APC 的默认设置,性能就会立即得到提升。

然后您可以根据需要进行调整。参见文档适用于各种设置。

我见过的最常见的设置是单个段,其大小适合您的系统:

在 php.ini 中:

extension=apc.so
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 50M 

APC 附带一个方便的 apc.php 脚本,它可以为您提供大量有用的数据(例如您获得了多少次命中/未命中)以及漂亮的图表。

答案2

Memcached 是一个服务器。因此使用以下命令安装它apt-get 安装 memcached PHP 需要一个扩展才能与 memcached 配合使用:apt-get 安装 php5-memcache 加速器APC由另一个扩展提供:apt-get 安装 php-apc

不要忘记重新启动您的 Web 服务器以使用新的模块。

我忘记了链接:[http://php.net/manual],然后检查memcache、apc

答案3

在 php.ini 中避免使用 apc.shm_size = 50M,而应使用apc.shm_size = 50M后缀使 PHP 忽略更改的大小,尽管 PHP 会在任何地方向您声明50M它使用的大小。您只是弄错了。

相关内容