Memcached是一个免费的开源高性能内存中键值数据存储。 通常,它用作缓存系统,通过缓存数据库调用结果来加速应用程序。

本文介绍了如何在CentOS 8上安装和配置Memcached。

在CentOS上安装Memcached

Memcached软件包包含在默认的CentOS 8存储库中。 安装非常简单,以root或具有sudo权限的用户 的身份输入以下命令:

sudo dnf install memcached libmemcached

libmemcached程序包提供了一些用于管理Memcached服务器的命令行工具。

安装完成后,通过键入以下内容启用并启动Memcached服务:

sudo systemctl enable memcached --now

要验证memcached是否正在运行,请输入:

sudo systemctl status memcached

输出应如下所示:

● memcached.service - memcached daemon
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-04-13 20:12:52 UTC; 2s ago
   ...

就这样,您已经在CentOS 8服务器上安装了Memcached,就可以开始使用它了。

配置Memcached

Memcached选项可以在/etc/sysconfig/memcached文件中配置。 默认情况下,Memcached设置为仅在本地主机上侦听。

如果连接到服务器的客户端也在同一主机上运行,则不应进行任何更改。

远程访问

如果要连接到Memcached的应用程序托管在远程服务器上,则需要配置防火墙并仅允许从客户端IP地址访问Memcached端口11211

如果配置不正确,则Memcached可被执行分布式拒绝服务(DDoS)攻击。

以下示例假定您要通过专用网络连接到Memcached服务器。 Memcached服务器的IP为192.168.100.20,客户端的IP地址为192.168.100.30

第一步是编辑Memcached配置并将服务设置为在服务器的专用网络接口上进行监听:

打开memcached配置文件:

sudo nano /etc/sysconfig/memcached

OPTIONS参数中,添加服务器IP地址-l 192.168.100.20。 这指示Memcached仅绑定到指定的接口。  

/etc/sysconfig/memcached

OPTIONS="-l 192.168.100.20"

保存文件,然后重新启动Memcached服务,以使更改生效:

sudo systemctl restart memcached

配置服务后,下一步就是在防火墙中打开内存缓存端口。

CentOS带有防火墙配置工具 FirewallD 。 以下命令将创建一个名为memcached的新域zone,打开端口11211,并仅允许从客户端IP地址进行访问。

sudo firewall-cmd --new-zone=memcached --permanent

连接到Memcached

要连接到Memcached服务器,您需要使用特定语言的客户端。

PHP

要将Memcached用作 PHP 应用程序(例如 WordPress Drupal Magento )的缓存数据库,您需要 安装php-pecl-memcached扩展名:

sudo dnf install php-pecl-memcache

Python

有几个 Python 库与memcached进行交互。 您可以使用 pip

安装首选库。

pip install pymemcache
pip install python-memcached

结论

我们向您展示了如何在CentOS 8上安装Memcached。有关此主题的更多信息,请参阅 Memcached Wiki

如果您有任何问题或反馈,请随时在下面评论。