如何在Ubuntu Linux 18.04上安装和配置memcached

时间:2020-01-09 10:40:52  来源:igfitidea点击:

如何使用memcached减少我的MariaDB/MySQL/PostgreSQL服务器上的负载。
如何在Ubuntu Linux 18.04 LTS上安装和配置memcached服务器?

说明:Memcached是一种高性能的分布式内存对象缓存服务器。
它是免费的开源软件,旨在通过减轻数据库负载来加速动态Web应用程序。
本教程显示如何在Ubuntu Linux 18.04 LTS上安装,配置和验证memcached安装。

如何在Ubuntu 18.04上安装和配置memcached

在Ubuntu上安装和配置memcached的过程如下:

  • 使用apt命令更新基于Ubuntu的系统
  • 通过运行sudo apt install在Ubuntu上安装memcached

步骤1更新您的Ubuntu服务器

执行以下apt命令或apt-get命令以将系统升级到最新软件:

$ sudo apt update
$ sudo apt upgrade

更新Ubuntu Linux 18.04 LTS服务器软件包索引并安装更新(如果有)

步骤2在Ubuntu上安装Memcached服务器

再次运行apt命令,如下所示:

$ sudo apt install memcached

步骤3在Ubuntu Linux 18.04 LTS上配置memcached服务器

接下来,您需要使用诸如nano命令或vim命令之类的文本编辑器来编辑名为/etc/memcached.conf的配置文件:

$ sudo nano /etc/memcached.conf

或者

$ sudo vi /etc/memcached.conf

从256 MB的内存上限开始:

-m 256

memcached的默认连接端口为11211:

-p 11211

指定要监听的IP地址。
默认为侦听所有IP地址。
此参数是memcached拥有的仅有的安全措施之一,因此请确保在防火墙接口上进行监听。
在我的示例中,我将监听127.0.0.1和服务器专用IP地址172.26.12.173:

-l 127.0.0.1,172.26.12.173

限制同时传入的连接数。
守护程序的默认值为1024,但是我要增加到4096:

-c 4096

使用vim文本编辑器时,通过执行ESC +:x保存并关闭文件。

如何在Ubuntu 18.04上重新启动,停止,重新加载Memcached服务器

可以如下使用systemctl命令:

$ sudo systemctl stop memcached
$ sudo systemctl start memcached
$ sudo systemctl restart memcached
$ sudo systemctl status memcached

在Ubuntu Linux 18.04 LTS上启动,停止,重新启动的命令

如何使用UFW打开Memcached端口11211

假设您有基于lxd的容器在Ubuntu上运行,并使用10.147.164.0/24子网范围。
我将使用Ubuntu上基于ufw的防火墙来限制IP访问,如下所示:

sudo ufw allow from container_ip1 to any port 11211
sudo ufw allow from vm2_ip2 to any port 11211
sudo ufw allow from sub/net to any port 11211
sudo ufw allow from 10.147.164.5 to any port 11211
sudo ufw allow from 10.147.164.3 to 172.26.12.173 port 11211 proto tcp
sudo ufw allow from 10.147.164.0/24 to any port 11211

如何验证memcached是否正在运行

使用ss命令或netstat命令验证TCP端口11211是否打开并列出:

$ sudo ss -tulpn | grep :11211
$ sudo netstat -tulpn | grep :11211

如何安装CLI工具以通过libmemcached与memcached对话

让我们安装libmemcached-tools来管理memcached服务器和测试目的:

$ sudo apt install libmemcached-tools

验证内存缓存服务器的连接性:

$ memcstat --servers=127.0.0.1

借助memstat命令转储memcached服务器的状态

如何从PHP/Perl/Python/Ruby lang访问memcached

根据您的需要安装软件包:

  • ruby-dalli Ruby客户端
  • php-memcached PHP模块
  • python-memcache Python客户端
  • python3-pymemcache Python 3.x客户端
  • libcache-memcached-libmemcached-perl Perl for Memcached :: libmemcached