如何在CentOS 8上安装Memcached
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 2017-04-13 20:12:52 UTC; 2s ago ...
就是这样,我们已经在CentOS 8服务器上安装了Memcached,就可以开始使用它了。
配置Memcached
可以在“/etc/sysconfig/memcached”文件中配置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”的新区域,打开端口“ 11211”,并仅允许从客户端IP地址进行访问。
sudo firewall-cmd --new-zone=memcached --permanentsudo firewall-cmd --zone=memcached --add-port=11211/udp --permanentsudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanentsudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanentsudo firewall-cmd --reload
连接到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