Memcached是一个的开源高性能内存键值数据存储。它主要用于通过从数据库调用结果中缓存各种对象来加速应用程序。
在本教程中,我们将说明在Ubuntu 18.04安装和配置Memcached的过程。您需要以root或者具有sudo访问权限的用户登录,才能在您的Debian系统安装软件包。
Memcached软件包包含在默认的Ubuntu 18.04存储库中。安装非常简单,只需执行以下步骤。第一步是更新软件包列表运行命令sudo apt update
。
然后安装Memcached和必须的CLI命令行工具,运行命令sudo apt install memcached libmemcached-tools
。
libmemcached-tools
软件包包含几个用于管理Memcached服务器的命令行工具。完成后,Memcached服务将自动启动。
要检查服务的状态,请运行systemctl命令查看服务的状态。如果你还熟悉systemctl命令可参考我们的教程日如何列出Linux Systemd服务,查看服务的状态。
sudo apt update
sudo apt install memcached libmemcached-tools
sudo systemctl status memcached
至此,您已经在Ubuntu 18.04服务器上成功安装了Memcached。
配置Memcached
Memcached可以通过编辑/etc/memcached.conf
文件进行配置。默认配置设置足以满足大多数用户的需求。
默认情况下,Memcached服务仅在localhost本地回环地址监听。如果连接到服务器的客户端也在同一主机上运行,则无需更改默认配置文件。
如果配置不正确,Memcached可用于执行分布式拒绝服务(DDoS)攻击。要允许与Memcached服务器的远程连接。您需要配置防火墙,并仅允许受信任的客户端访问Memcached UDP端口11211。
在以下示例中,我们假设您要通过专用网络连接到Memcached服务器。服务器IP为192.168.100.20
,客户端IP地址为192.168.100.30
如果使用的是UFW防火墙,请运行以下命令以允许从远程客户端IP地址192.168.100.30进行连接。如果您运行的是iptables,请运行iptable的命令。
如果你要允许来自远程所有IP地址的连接,请将IP地址更改为0.0.0.0
。
sudo ufw allow from 192.168.100.30 to any port 11211
#iptables -I INPUT -s 192.168.100.30 --dport 2112112 -j ACCEPT
一旦配置了防火墙,下一步就是编辑Memcached设置并设置Memcached服务以监听服务器的专用网络接口。
使用你喜欢的文本编辑器,编辑文件/etc/memcached.conf,在本教程我们将使用vim编辑文件/etc/memcached.conf。
sudo vim /etc/memcached.conf
找到以-l 127.0.0.1
开头的行,并将127.0.0.1
替换为服务器IP地址192.168.100.20
。
如果你要允许来自远程所有IP地址的连接,请将IP地址更改为0.0.0.0
。
# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 192.168.100.20
编辑完成后,保存文件并退出vim,然后重新启动Memcached服务以使更改生效。现在,您可以从远程位置连接到Memcached服务器。
sudo systemctl restart memcached
连接到Memcached
要连接到Memcached服务器,您可以使用Memcached的客户端,或者使用编程语言连接到mencached。
要将Memcached用作WordPress,Drupal或Magento等PHP应用程序的缓存数据库,您需要安装php-memcached
扩展,运行命令sudo apt install php-memcached
。
如果你使用python与Memcached进行交互,你可使用pip安装pymemcache或者python-memcached包
sudo apt install php-memcached
pip install pymemcache #for python
pip install python-memcached
结论
您已经了解了如何在Ubuntu 18.04服务器安装Memcached。有关此主题的更多信息,请参阅Memcached Wiki 。