一文详解 WordPress 中使用 Memcached 的常见问题
内容提要
本文介绍了如何正确安装和使用 Memcached 来加速 WordPress 站点,解决常见问题,包括安装步骤、选择 PHP 扩展、验证安装成功、多个站点共用的注意事项,以及设置缓存过期时间的方法。
关键要点
-
本文介绍了如何正确安装和使用 Memcached 来加速 WordPress 站点。
-
安装 Memcached 需要在服务器上安装 Memcached 服务端和 PHP Memcached 扩展。
-
将 WPJAM Basic 插件中的 object-cache.php 文件复制到 wp-content 目录下以启用缓存机制。
-
Memcached 有两个 PHP 扩展:PHP Memcache 扩展和 PHP Memcached 扩展,建议使用后者。
-
成功安装 Memcached 后,可以在 WordPress 后台的 WPJAM 菜单中查看相关信息。
-
多个 WordPress 站点共用 Memcached 时,需确保使用不同的表前缀以避免数据串联。
-
可以通过修改表前缀或在 wp-config.php 中定义不同的 WP_CACHE_KEY_SALT 值来解决多个站点的问题。
-
设置缓存过期时间时,需注意 Memcached 将大于 30 天的时间视为 Unix 时间戳。
-
要设置缓存过期时间为一年,需使用 time()+60×60×24×365 的方式。
延伸解读
Memcached 扩展选择的重要性
在选择 Memcached 的 PHP 扩展时,建议使用 PHP Memcached 扩展而非 PHP Memcache 扩展。后者功能较少且较旧,可能无法满足现代网站的需求。使用合适的扩展可以确保更好的性能和更多的功能支持,尤其是在处理批量操作时。
多个站点共用 Memcached 的注意事项
在同一服务器上运行多个 WordPress 站点时,确保每个站点使用不同的表前缀或定义不同的 WP_CACHE_KEY_SALT 值,以避免数据串联问题。这是因为 Memcached 使用表前缀来区分缓存数据,若相同则可能导致混淆。
缓存过期时间设置的细节
设置 Memcached 的缓存过期时间时,需注意大于 30 天的时间会被视为 Unix 时间戳。为了确保缓存有效,建议使用 time()+60×60×24×365 的方式来设置一年后的过期时间,以避免获取缓存时返回 null 的问题。
延伸问答
如何在 WordPress 中安装 Memcached?
首先需要在服务器上安装 Memcached 服务端,然后安装 PHP Memcached 扩展,并将 object-cache.php 文件复制到 wp-content 目录下。
选择哪个 PHP 扩展来使用 Memcached?
建议使用 PHP Memcached 扩展,因为它功能更完善,支持更多的操作。
如何验证 Memcached 是否安装成功?
可以在 WordPress 后台的 WPJAM 菜单下的系统信息中查看 Memcached 的相关信息,如果显示正常则表示安装成功。
多个 WordPress 站点如何共用 Memcached?
需要确保每个站点使用不同的表前缀,或者在 wp-config.php 中定义不同的 WP_CACHE_KEY_SALT 值。
如何设置 Memcached 的缓存过期时间?
可以使用 wp_cache_set 函数设置缓存过期时间,若要设置为一年,应使用 time()+60×60×24×365 的方式。
Memcached 的缓存过期时间有什么特殊要求?
如果设置的过期时间大于 30 天,Memcached 会将其视为 Unix 时间戳,而不是从当前时间算起的秒数。