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

・4 分钟阅读

使用不同的系统?

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

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

前提条件

  • 新的Ubuntu 18.04服务器
  • sudo访问权限的非root用户帐户

安装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

你可以验证Memcached只绑定到本地接口,并且只侦听与netstat的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设置

现在,你可以使用libmemcached-tools软件包中的memcstat命令来验证设置:


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交互。

Zuoxiaojuan profile image