如何在Ubuntu 18.04上安装和配置Memcached

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com

Memcached是一个开源的分布式内存中对象缓存系统。它主要用于通过存储来自数据库调用和页面呈现结果的数据块来加速动态Web应用程序。

在本指南中,我们将在Ubuntu 18.04上安装和保护Memcached。

先决条件

新鲜的Vultr Ubuntu 18.04服务器
具有非root用户帐户 sudo 访问

安装Memcached

首先,更新系统:

sudo apt update && sudo apt upgrade -y

接下来,安装官方的Memcached软件包;以及 libmemcached-tools,提供了一些与Memcached配合使用的实用程序:

sudo apt install -y memcached libmemcached-tools

Memcached现在将作为服务安装。您可以使用来确保它正在运行 systemctl

sudo systemctl status memcached

输出将类似于以下内容:

memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
  Active: active (running) since Sun 2018-12-16 14:59:06 IST; 3 weeks 4 days ago
Main PID: 3927 (memcached)
   Tasks: 6
  Memory: 2.2M
     CPU: 2min 10.089s
  CGroup: /system.slice/memcached.service
           └─3927 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1

配置Memcached

让我们将Memcached绑定到本地接口,以避免潜在的DDOS攻击。
打开 /etc/memcached.conf 文件在您最喜欢的编辑器中:

sudo vi /etc/memcached.conf

在文件中找到以下行,并确保未对其进行注释:

-l 127.0.0.1

如果此配置更开放,则可以限制 UDP 通过在文件末尾添加以下行:

-U 0

保存文件并退出。

重新启动Memcached以应用您的更改:

sudo systemctl restart memcached

您可以使用netstat验证Memcached仅绑定到本地接口,并且仅侦听TCP连接:

sudo netstat -plunt

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
...
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      3927/memcached
...

还有一些其他选项可以在 /etc/memcached.conf 组态:

-m:限制Memcached可用的内存量。
-p:指定Memcached应​​该在哪个端口上监听。默认端口是 11211
-u:指定服务将用于与哪个用户一起运行。默认情况下,该服务将以 root
-c:限制并发连接数。默认是 1024

验证Memcached设置

现在,您可以使用 memcstat 来自的命令 libmemcached-tools 包:

memcstat --servers="localhost"

输出将类似于以下内容:

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以及如何使用 memcstat 获取统计信息。的 libmemcached-tools 软件包还附带了一些其他实用程序,可帮助与Memcached进行交互。

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com