启用 Memcached 为网站加速
Memcached 是一款开源的分布式内存对象缓冲软件系统,与 Redis 类似可以使用内存来缓冲数据对象,通过减少数据库的访问次数来加速数据的存取速度。Memcached 的特点是性能高、资源占用小,简单、部署快,支持多种开发语言以及跨平台。
部署 Memcached 分成两个部分,即服务器端和客户端。下面以 Linux(Ubuntu) + PHP + WordPress 为例介绍具体的部署方法。
一、服务器端部署
(1)安装 Memcached 服务器端软件包。
#apt-get install memcached
服务器端的配置文件在 /etc/memcached.conf,里面包含运行的用户名、运行端口、使用内存大小、连接数等信息,可以按照需求调整。
二、客户端部署
(1)安装 libMemcached 接口库,用于客户端访问服务器端的调用接口。
#apt update
#apt upgrade
#apt-get install libmemcached-dev libevent-dev
(2)PHP Memcached 客户端扩展模块,采用编译安装的方式。该扩展模块依赖上面安装的 libMemcached 接口库。
$git clone https://github.com/php-memcached-dev/php-memcached
$cd php-memcached
$phpize
$./configure
$make
$make install
(3)编辑 php.ini,加载编译好的 php-memcached 模块。
extension=memcached.so
##检查是否成功加载
#pkill php
#php-fpm
#php -m | grep memcached
(4)安装 WordPress Memcached 客户端软件(object-cache.php),WordPress 使用该客户端接口通过调用 php-memcached 来访问服务器端的功能。拷贝该文件到 WordPress 的 wp-content 目录下。
$git clone https://github.com/tollmanz/wordpress-pecl-memcached-object-cache
$cd wordpress-pecl-memcached-object-cache
$cp object-cache.php xxx/wp-content/
(5)安装 Memcached 运行监控软件,包含服务器端、客户端运行信息,内存使用率、命中比率等信息。
$mkdir memcache
$cd memcache
$wget https://pecl.php.net/get/memcache-8.0.tgz
$tar tf memcache-8.0.tgz | grep memcache.php
memcache-8.0/memcache.php
$tar xzf memcache-8.0.tgz memcache-8.0/memcache.php
编辑解压出来的 memcache.php 文件,把其中的服务器端的配置信息改一下:
$MEMCACHE_SERVERS[] = ‘mymemcache-server1:11211’;
改成:
$MEMCACHE_SERVERS[] = ‘127.0.0.1:11211’;
或者其它的 Memcached 服务器端的 IP 地址。
把编辑好的 memcache.php 拷贝到 WordPress 的某个目录下,比如主题或插件的目录下,然后创建一篇文章,添加 Html 模块,使用 iFrame 标签引用该文件。最后把文章的可见性改成 “私密”。
<iframe width=”100%” heigth=”650px” src=”/wp-content/plugins/kflyo/memcache.php”></iframe>