Memcached 是一个高性能、开源的分布式内存对象缓存系统,它通常用于通过存储来自数据库调用和应用程序请求结果的频繁请求数据来加速动态 Web 应用程序。Memcached 是一种出色的解决方案,可以减少数据库负载并充当无法从数据库提供的请求的占位符。它提供了不同的方式来存储数据,例如键值对或排序集。Memcached 的加速效果还是挺明显的,目前搬瓦工中文网这个网站暂时没有使用,不过在其他网站已经使用了,效果明显。
其实宝塔面板可以直接安装 Memcached,安装起来非常简单方便快捷,不过我们也可以选择手动进行安装,从源码进行编译并安装,可能会有一种成就感。
安装之前,我们需要有一台 Ubuntu 20.04 LTS 系统的搬瓦工 vps,并且最好创建一个具有 sudo 权限的非 root 用户,并且更新系统。
下面正式开始 Memcached 安装教程。
一、安装依赖项
你需要安装一些工具来编译 Memcached 源码包。
1 2 | $ sudo apt-get install gcc make libevent-dev libc6-dev --no-install-recommends |
选项 --no-install-recommends
仅用于安装提到的包。
其他包说明如下:
-
gcc
是 Memcached 源文件的著名 C 编译器。 -
make
用于指导编译 -
libc6-dev
用于参考 GNU C 库和头文件 -
libevent-dev
是著名的异步事件通知开发文件
安装所有 Memcached 依赖项以下载 Memcached 源包并将其安装到系统中。
二、下载并编译 Memcached
下载最新的 Memcached 文件:
1 2 | $ wget https://memcached.org/latest |
解压安装包:
1 2 | $ tar -xvf latest |
将工作目录更改为提取的文件。如果您下载了较新的版本,目录名称可能会有所不同。
1 2 | $ cd Memcached-1.6.12/ |
使用 --prefix=
参数设置安装 Memcached 二进制文件和库的目录。比如下面的示例使用 /usr/local
目录。
1 2 | $ ./configure --prefix=/usr/local/memcached |
编译 Memcached 源码:
1 2 | $ make |
确认 Memcached 版本号:
1 2 | $ ./memcached --version |
安装 Memcached:
1 2 | $ sudo make install |
测试 Memcached 是否处于活动状态并在 TCP 端口 11211 上运行。
1 2 | $ netstat -tulpn | grep :11211 |
三、Memcached 服务管理教程
安装成功 Memcached 后,就可以使用 systemctl
这个命令管理 Memcached 服务了。
启动 Memcached 服务:
1 2 | sudo systemctl start memcached |
检查 Memcached 的状态:
1 2 | sudo systemctl status memcached |
要停止 Memcached:
1 2 | sudo systemctl stop memcached |
四、Memcached 安全设置教程
默认情况下,Memcached 在具有 TCP 端口的本地接口上运行。要限制潜在的攻击,请通过防火墙阻止 Memcached 端口 11211 上的传入 UDP 连接。
1 2 | $ sudo ufw deny 11211/udp |
五、配置 Memcached
您还可以通过配置文件将 Memcached 限制在本地接口,使用您喜欢的编辑器打开 Memcached 配置文件。
1 2 | sudo vi /etc/memcached.conf |
在文件中找到以下行,如果有注释,请取消注释。
1 2 | -l 127.0.0.1 |
如果您还想限制 UDP,请在文件末尾添加以下行。
1 2 | -U 0 |
保存文件并重启服务:
1 2 | sudo systemctl restart memcached |
使用 netstat
验证 Memcached 是否绑定到本地接口并且只监听 TCP 连接。
1 2 | sudo netstat -plunt |
六、验证 Memcached 设置
您可以使用 libmemcached-tools 包中的 memcstat
验证 Memcached 设置。
1 2 | memcstat --servers="localhost" |
将会得到类似输出:
1 2 3 4 5 6 7 8 9 10 11 12 | Server: localhost (11211) pid: 3927 uptime: 2217682 time: 1547170226 version: 1.4.25 libevent: 2.0.21-stable pointer_size: 64 rusage_user: 75.436000 rusage_system: 57.768000 curr_connections: 1 total_connections: 53082 ... |
七、连接到 Memcached 示例
PHP
如果您想将 Memcached 用作您的 PHP 应用程序(例如 wordpress、Magento、Joomla 或 Drupal)的缓存数据库,您应该使用 Memcached 扩展,您可以安装它:
1 2 | sudo apt install php-memcached |
Python
1 2 | pip install pymemcache pip install python-memcached |
至此,就可以顺利安装并使用 Memcached 给网站加速了。
八、搬瓦工新手教程和优惠套餐
搬瓦工推荐方案
搬瓦工实时库存:https://stock.bwg.net
方案 | 内存 | CPU | 硬盘 | 流量/月 | 带宽 | 机房 | 价格 | 购买 |
---|---|---|---|---|---|---|---|---|
CN2 (最便宜) | 1GB | 1核 | 20GB | 1TB | 1Gbps | DC3 CN2 DC8 ZNET | $49.99/年 | 购买 |
CN2 | 2GB | 1核 | 40GB | 2TB | 1Gbps | $52.99/半年 $99.99/年 | 购买 | |
CN2 GIA-E (最推荐) | 1GB | 2核 | 20GB | 1TB | 2.5Gbps | DC6 CN2 GIA-E DC9 CN2 GIA 日本软银 JPOS_1 荷兰 EUNL_9 | $49.99/季度 $169.99/年 | 购买 |
CN2 GIA-E | 2GB | 3核 | 40GB | 2TB | 2.5Gbps | $89.99/季度 $299.99/年 | 购买 | |
HK | 2GB | 2核 | 40GB | 0.5TB | 1Gbps | 中国香港 CN2 GIA | $89.99/月 $899.99/年 | 购买 |
HK | 4GB | 4核 | 80GB | 1TB | 1Gbps | $155.99/月 $1559.99/年 | 购买 | |
TOKYO | 2GB | 2核 | 40GB | 0.5TB | 1.2Gbps | 日本东京 CN2 GIA | $89.99/月 $899.99/年 | 购买 |
TOKYO | 4GB | 4核 | 80GB | 1TB | 1.2Gbps | $155.99/月 $1559.99/年 | 购买 | |
搬瓦工优惠码:BWH3HYATVBJW | 搬瓦工购买教程:《2021年全新BandwagonHost搬瓦工VPS主机购买图文教程 性价比CN2优化线路商》 |
选择建议:
- 入门:洛杉矶 CN2 套餐,目前最便宜,可选 CN2 GT 机房,入门之选。
- 推荐:洛杉矶 CN2 GIA-E 套餐,速度超快,可选机房多(DC6、DC9、日本软银、荷兰联通等),性价比最高。
- 高端:香港 CN2 GIA 套餐,价格较高,但是无可挑剔。东京 CN2 GIA 套餐也是非常不错的高端选择。