共计 3969 个字符,预计需要花费 10 分钟才能阅读完成。
很多小伙伴在使用 WordPress 程序建站的时候都会开启对象缓存,为了加快访问速度,有的开启 Memcached,有的开启 Redis。如果安装 LiteSpeed 或者 OpenLteSpeed 的话,其实还有官方的 LiteSpeed Memcached,简称 LSMCD。但是比较多的小伙伴直接安装的是 Memcached 对象缓存,如何安装启用 LSMCD 呢? 这里我就分享一下安装 OpenLiteSpeed 官方 LSMCD 对象缓存替换 Memcached 详细图文教程。
一、什么是 LSMCD
LiteSpeed Memcached(”LSMCD”) 是 LiteSpeed 的持久性 memcache 兼容的缓存守护程序。它的性能和界面与流行的 Memcached 相似,并增加了高可用性的复制功能,可选择分离用户的数据。在 LSMCD 中,缓存数据在单箱和多箱设置中都是持久的–在更新和服务器故障的情况下保留所有缓存数据。
简单来说,传统的 Memcached 对象缓存是将数据存在内存中,一般更新或者重启甚至服务器故障时,这些数据都会消失,因此访客第二次访问的时候都会重新将数据缓存到内存里,因此首次访问都会变慢。但是 Redis 对象缓存巨头持久性,将数据存在数据库内,确保更新、重启、故障时数据不会丢失。
而 LSMCD 具有两者的特点。其将数据保存在硬盘上,下次访问的时候会将内存与硬盘的数据进行对比,如果一样则直接读取数据,避免了数据库的读写导致访问速度的变慢。
二、禁用 Memcached
在安装 LSMCD 前,我们首先要禁用 Memcached,这里的例子指的是前期类似于我这样用 CyberPanel 这样一键安装的方式安装了 OpenLiteSpeed 环境程序,顺便安装了 Memcached 启用的情况下。因此要安装 LSMCD,则需要先禁用 Memcached,否则会导致冲突。
进入主机的 SSH 内,先分别输入如下内容进行回车
systemctl stop memcached.service
systemctl disable memcached.service
如上,就可以禁用 Memcached 了。
三、安装 LSMCD 图文教程
然后这里我们要安装 LSMCD。
1、LSMCD 下载
登陆 SSH 后,分别输入如下命令安装环境依赖,这里以 Centos7 为例。其他安装方式可以查看官方说明
yum groupinstall "Development Tools"
yum install autoconf automake zlib-devel openssl-devel expat-devel pcre-devel libmemcached-devel cyrus-sasl*
然后选择下载 LSMCD,有三种方式,克隆、wget、curl,以下三种任选一种即可
Git: git clone https://github.com/litespeedtech/lsmcd.git
Wget: wget https://github.com/litespeedtech/lsmcd/archive/master.zip
Curl: curl -O https://github.com/litespeedtech/lsmcd/archive/master.zip
这里我选择的是克隆,也就第一种 Git。如果选择 wget 或 curl 的小伙伴,下载完成还要输入如下命令进行解压
unzip master.zip
如果选择克隆的话则无需解压。
2、LSMCD 编译
接下来我们要进行 LSMCD 编译
cd lsmcd
./fixtimestamp.sh
./configure CFLAGS="-O3" CXXFLAGS="-O3"
make
分别输入上述命令回车。
一般顺利的话很快就编译完成。
3、安装 LSMCD
输入如下命令进行安装
sudo make install
安装过程也非常快,我在 30 秒内就安装完成了。
安装完成后,是不是马上就可以启用了呢? 当然不是了,还需要进行简单的配置。输入如下命令进行编辑
vi /usr/local/lsmcd/conf/node.conf
进入如下的配置页面后,按键盘上的 i 键即可进行编辑,编辑好后按键盘的 esc 键退出,再输入 :wq 后回车即可退出。
Repl.HeartBeatReq=30
Repl.HeartBeatRetry=3000
Repl.MaxTidPacket=2048000
Repl.GzipStream=YES
Repl.LbAddrs=127.0.0.1:12340
Repl.ListenSvrAddr=127.0.0.1:12340
REPL.DispatchAddr=127.0.0.1:5501
RepldSockPath=/tmp/repld.usock
CACHED.PRIADDR=127.0.0.1:11000
CACHED.ADDR=127.0.0.1:11211
#CACHED.ADDR=UDS:///tmp/lsmcd.sock
#default is 8. it can be bigger depending on cache data amount
Cached.Slices=8
Cached.Slice.Priority.0=100
Cached.Slice.Priority.1=100
Cached.Slice.Priority.2=100
Cached.Slice.Priority.3=100
Cached.Slice.Priority.4=100
Cached.Slice.Priority.5=100
Cached.Slice.Priority.6=100
Cached.Slice.Priority.7=100
Cached.ShmDir=/dev/shm/lsmcd
#If you change the UseSasl or DataByUser configuration options you need to remove the ShmDir folder and contents.
#Cached.UseSasl=true
#Cached.DataByUser=true
#Cached.Anonymous=false
#Cached.UserSize=1000
#Cached.HashSize=500000
#CACHED.MEMMAXSZ=0
#CACHED.NOMEMFAIL=false
##this is the global setting, no need to have per slice configuration.
User=nobody
Group=nobody
#depends CPU core
CachedProcCnt=4
CachedSockPath=/tmp/cached.usock.
#TmpDir=/tmp/lsmcd
LogLevel=notice
#LogLevel=dbg_medium
LogFile=/tmp/lsmcd.log
一般我们默认安装在本机上,因此 IP 是 127.0.0.1. 端口也未进行改变的话,沿用 11211.
这里我们要将里面的 User 及 Group 改为安装 PHP 使用的用户名及用户组。如何查看可以参考如下命令
cat /etc/passwd |cut -f 1 -d :
找到自己的用户名后,一般情况下用户组和用户名是一样的。比如我的 PHP 指定的用户是 banzhuti123. 因此将其改为 User=banzhuti123 及 Group=banzhuti123。另外将 CachedProcCnt=4 的数值改为与自己 CPU 核数一样。比如主机为双核,那就改为 2. 单核那就改为 1. 因为与使用多线程的 Memcached 不同,LSMCD 使用多处理。推荐值不超过系统中的 CPU 数量。
做好设置保存后,最后即可开启相应的防火墙端口,分别是 12340、5501、11000. 至于 11211 端口一般前面使用 Memcached 的时候已经开启了,这里就不用开启了。如果端口不开启的话,那服务是启动失败的。
输入如下命令进行开启或者停止
sudo systemctl start lsmcd
sudo systemctl stop lsmcd
sudo systemctl enable lsmcd
sudo systemctl disable lsmcd
详细配置说明可以参考官方的说明材料
四、测试 LSMCD 启用
开启 LSMCD 后,如何测试是否是正常启用的呢,这里可以输入如下命令查看
systemctl status lsmcd
如下图,状态为激活启用
输入命令 telnet 127.0.0.1 11211 ,然后再输入 stats 命令查看
进入后可以看到类似下图
这里大家注意,其中的版本 1.0.0 指的是打印的 API 版本,并非 LSMCD 版本,如果要查看 LSMCD 版本的刷,输入 quit 命令退出来后,输入如下命令查看 LSMCD 版本,可以看到版本是 1.4.20
/usr/local/lsmcd/bin/lsmcd -v
接下来登陆 WordPress 后台,打开 LiteSpeed Cache 插件,找到【缓存规则】-【对象】,查看连接是否通过
五、总结
因为 OpenLiteSpeed 及 LSMCD 的官方材料不多,导致安装时候会出现各类问题,我也是摸着石头过河后,将过程分享出来,希望给大家一些参考。至于 LSMCD 是否比 Memcached 好用或者优秀,后面我也会做相应的测试。
你的工作,由 AI 赋能!🔥
还在为文案、脚本卡壳、做视频、写代码、设计图片灵感枯竭而烦恼吗?🤯
板板 AI,你的工作好帮手!
一键生成 各种文案、脚本、图片、视频、代码、报告,轻松应对各种工作 / 营销需求!
现在注册体验,即可获得:
- 🎁 30 积分基础模型余额
- 🎁 3 积分高级模型余额
- 🎁 3 积分绘画余额
还不快来试试?
点击链接,开启你的 AI 创作之旅!>>>https://www.banbanai.cn
板板 AI,让你的工作效果发挥无限可能! 🚀