如何在CentOS 7上安装和配置Memcached

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

介绍

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

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

安装Memcached

首先,更新系统:

yum update -y

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

yum install -y memcached libmemcached

Memcached现在将作为服务安装。

要在启动时启动Memcached,请使用 systemctl 命令:

systemctl enable memcached

配置Memcached

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

nano /etc/sysconfig/memcached

在文件中找到以下行:

OPTIONS=""

将其更改为以下内容:

OPTIONS="-l 127.0.0.1 -U 0"

保存文件并退出编辑器。

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

systemctl restart memcached

您可以使用来确保它正在运行 systemctl

systemctl status memcached

输出将类似于以下内容:

● memcached.service - Memcached
Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-04-04 17:01:41 UTC; 8s ago
Main PID: 31312 (memcached)
CGroup: /system.slice/memcached.service
        └─31312 /usr/bin/memcached -u memcached -p 11211 -m 64 -c 1024 -l 127.0.0.1 -U 0

Apr 04 17:01:41 docs systemd[1]: Started Memcached.

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

ss -plunt | grep memcached

tcp    LISTEN     0      128    127.0.0.1:11211                 *:*                   users:(("memcached",pid=31312,fd=26))

还有一些其他选项可以在 /etc/sysconfig/memcached 配置文件:

CACHESIZE:限制Memcached可用的内存量。默认值为64 MB。
PORT:指定Memcached应​​该在哪个端口上监听。默认端口是 11211
USER:指定服务将用于运行的用户。默认情况下,该服务将以 memcached
MAXCONN:限制并发连接数。默认是 1024

验证Memcached设置

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

memstat --servers="localhost"

输出将类似于以下内容:

Server: localhost (11211)
    pid: 31312
    uptime: 385
    time: 1554397684
    version: 1.4.15
    libevent: 2.0.21-stable
    pointer_size: 64
    rusage_user: 0.006269
    rusage_system: 0.014105
    curr_connections: 1

...

结论

在本指南中,我们介绍了如何安装和配置Memcached以及如何使用 memstat 获取统计信息。的 libmemcached 软件包还附带了一些其他实用程序,可以帮助与Memcached进行交互。

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