Memcached是一个免费和开源的高性能内存键值数据存储。它主要是作为一个缓存系统,通过缓存数据库调用结果中的各种对象来加速应用程序。
在本教程中,我们将解释如何在CentOS 7上安装和配置Memcached。
在继续学习本教程之前,请确保你是以具有sudo权限的用户身份登录的。
Memcached软件包已经包含在默认的CentOS 7软件仓库中。安装非常简单,只需输入以下命令。
$ sudo yum install memcached libmemcached
libmemcached包提供了几个命令行工具来管理Memcached服务器。
安装完成后,启动并启用Memcached服务。
$ sudo systemctl start memcached$ sudo systemctl enable memcached
就这样,在这一点上,你已经在你的CentOS 7服务器上安装并运行了Memcached。
Memcached可以通过编辑/etc/sysconfig/memcached文件进行配置。默认情况下,Memcached被设置为在所有接口上监听。在下面的章节中,我们将告诉你如何为本地和远程访问配置服务。
如果配置不当,Memcached可以被用来进行分布式拒绝服务(DDoS)攻击。
如果连接到服务器的客户端也运行在同一台主机上,建议将Memcached服务设置为只监听本地主机。
要做到这一点,用文本编辑器打开memcached配置文件。
$ sudo nano /etc/sysconfig/memcached
在OPTIONS参数中添加-l 127.0.0.1。这指示Memcached只绑定到指定的接口。
/etc/sysconfig/memcached
OPTIONS="-l 127.0.0.1"
重新启动Memcached服务以使变化生效。
$ sudo systemctl restart memcached
如果连接到Memcached的应用程序被托管在一个远程服务器上,你需要配置你的防火墙,并且只允许从客户端IP地址访问Memcached的11211端口。
下面的例子假设你想通过私人网络连接到Memcached服务器。Memcached服务器的IP是192.168.100.20,客户端的IP地址是192.168.100.30。
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的配置文件:
$ sudo nano /etc/sysconfig/memcached
在OPTIONS参数中添加服务器IP地址 -l 192.168.100.20。
/etc/sysconfig/memcached
OPTIONS="-l 192.168.100.20"
保存该文件并重启Memcached服务。
$ sudo systemctl restart memcached
要连接到Memcached服务器,你需要使用一个特定语言的客户端。
要使用Memcached作为PHP应用程序的缓存数据库,如WordPress、Drupal或Magento,你需要安装php-pecl-memcached扩展:
$ sudo yum install php-pecl-memcache
有几个Python库可以与memcache进行交互。你可以使用 pip 安装你喜欢的库。
$ pip install pymemcache
$ pip install python-memcached
Copyright © 2013-2021 8a.hk All Rights Reserved. 八艾云 版权所有 中山市八艾云计算有限公司 粤ICP备14095776号