Memcached 是一种高性能、开源的内存中键值缓存服务,在很多方面都很不便。首先,它通过缓存会话数据、用户身份验证令牌和 API 调用来帮忙放慢应用程序的速度。此外,它还提供了一种有助于跨多个应用程序实例共享数据的机制。
那么,应用 Memcached 有什么益处呢?咱们能够将其长处总结为两个:进步应用程序性能和升高运行应用程序的老本,因为它是收费的。
本篇文章将向您展现如何在 RHEL 8 / CENTOS 8 中装置 Memcached。
必备条件
- Minimal Installed RHEL 8 or CentOS 8 stream.
- A standard user with sudo or elevated privileges
(1) 装置 Memcached Server
更新零碎包列表
$ sudo dnf update -y
装置 memcached
$ sudo dnf install -y memcached libmemcached
看到上面的输入,表明装置胜利。
验证 memcached 是否装置胜利
$ rpm -q memcached
memcached-1.5.9-2.el8.x86_64
$
无关 Memcached 的更详细信息,请应用 -qi 参数,这将显示更深刻的信息,如 Memcached 版本、架构、装置日期、构建日期等等。
$ rpm -qi memcached
(2) 配置 Memcached
memcached 默认配置文件为 /etc/sysconfig/memcached,默认状况下,它监听在端口 11211 和 localhost 上听,如在第 5 行上的 127.0.0.1 所示。
$ cat -n /etc/sysconfig/memcached
1 PORT="11211"
2 USER="memcached"
3 MAXCONN="1024"
4 CACHESIZE="64"
5 OPTIONS="-l 127.0.0.1,::1"
$
如果连贯到 Memcached 的应用程序位于与 Memcached 雷同的服务器上,请放弃默认配置不变。
如果您在同一个 LAN 上的近程零碎上运行一个应用程序,并且心愿它连贯到 Memcached 服务器,请调整第 5 行,将 localhost 地址 127.0.0.1 替换为近程零碎的 IP 地址,示例如下:
$ sudo vi /etc/sysconfig/memcached
1 PORT="11211"
2 USER="memcached"
3 MAXCONN="1024"
4 CACHESIZE="64"
5 OPTIONS="-l 192.168.2.100,::1"
保留并退出配置文件
(3) 配置防火墙
此外,咱们还须要在防火墙上放行 11211 端口,容许连贯到 Memcached 服务器。
$ sudo firewall-cmd --add-port=11211/tcp --zone=public --permanent
$ sudo firewall-cmd --reload
(4) 启动并启用 Memcached 服务
实现所有配置后,启动并启用 Memcached 服务,如下所示
$ sudo systemctl start memcached
$ sudo systemctl enable memcached
验证 Memcached 服务的状态
$ sudo systemctl status memcached
Memcached 与 PHP 集成
如前所述,Memcached 可用于减速应用程序,您须要在服务器上安装特定语言的客户机。例如,如果您正在运行一个 PHP 应用程序,如 WordPress、OwnCloud 或 Magento,请装置 php-pecl-memcached 扩大。
php-pecl-memcached 扩大在默认的 CentOS 8 存储库中不可用,咱们必须启用 epel 和 remi 存储库
$ sudo dnf install epel-release -y
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
$ sudo dnf module enable php:remi-7.4 -y
$ sudo dnf install -y php-pecl-memcache php-pecl-memcached
开始测试,让咱们装置一个 web 服务器和其余 PHP 依赖项
$ sudo dnf install -y nginx php php-cli
启动 nginx,并创立一个测试页面来验证是否为 PHP 启用了 Memcached
$ sudo systemctl enable nginx.service –now
$ sudo systemctl restart memcached.service
$ sudo vi /usr/share/nginx/html/info.php
将以下内容粘贴到文件中并保留更改
<?php
phpinfo();
?>
而后,关上浏览器,浏览地址:http://server-ip/info.php
向下滚动,寻找对于 Memcached 的局部。
Memcached 与 python 集成
对于 Python 应用程序,确保您装置了 pymemcache 和 python-memcached 库
$ pip3 install pymemcache --user
$ pip3 install python-memcached --user
我的开源我的项目
- course-tencent-cloud(酷瓜云课堂 – gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 – github 仓库)