Memcached 是一个高性能的分布式内存对象缓存系统,用于加速动态Web应用程序的数据访问速度。它通过在内存中缓存数据和对象来减少数据库负载,从而提升网站的响应速度。
litespeed就不用介绍了,按官方所说,具有兼容性、并发性相结合的优点,大幅提i高服务器性能。
而在litespeed服务器环境中,还有针对于Memcached的一个版本,即LiteSpeed Memcached(LSMCD),与Memcached相比,LSMCD最大的优势是支持数据持久化,这样的话,在服务器重启的时候,就不会因为缓存数据是在内存中而丢失了。
LSMCD:LiteSpeed Memcached的主要特点是其数据持久性。这意味着即使在服务器重启或更新后,缓存的数据也不会丢失,因为它使用了基于文件的共享内存。在LSMCD中,缓存数据在单箱和多箱设置中都是持久的——在更新和服务中断的情况下保留所有缓存数据。
Memcached:传统Memcached对象缓存将数据存储在内存中,这意味着在更新或重启服务器甚至发生故障时,这些数据将会消失。因此,当再次访问时,需要重新将数据缓存到内存中,这可能导致首次访问的速度降低。
要安装LiteSpeed Memcached(LSMCD)很简单,官方有相应的脚本。
禁用Memcached
要注意的是,如果我们一开始已经安装了普通的Memcached,那么首先要禁用。
在安装LSMCD前,我们首先要禁用Memcached,这里的例子指的是前期类用CyberPanel这样一键安装的方式安装了OpenLiteSpeed环境程序,顺便安装了Memcached启用的情况下。因此要安装LSMCD,则需要先禁用Memcached,否则会导致冲突。
进入主机的SSH内,先分别输入如下内容进行回车
systemctl stop memcached.service
systemctl disable memcached.service
安装依赖
编译和安装 LSMCD 有一定的软件包要求。LSMCD 依赖于这些软件包才能正常工作。所需的软件包在发行版之间略有不同。
ubuntu服务器环境下:
sudo apt-get install git build-essential zlib1g-dev libexpat1-dev openssl libssl-dev libsasl2-dev libpcre3-dev sasl2-bin -y
sudo apt-get install git build-essential zlib1g-dev libexpat1-dev openssl libssl-dev libsasl2-dev libpcre3-dev sasl2-bin -y
下载软件
git clone https://github.com/litespeedtech/lsmcd.git
编译
要编译 LSMCD,请从提升的 shell 终端运行以下命令:
cd lsmcd
./fixtimestamp.sh
./configure CFLAGS=" -O3" CXXFLAGS=" -O3"
make
PS:我在这里失败好几次,最后发现,有可能是复制代码出错了。
现在应该构建 LSMCD。如果有任何错误,请仔细检查是否安装了所有软件包要求。
安装
要在编译后安装 LSMCD,请从同一个提升的 shell 终端运行以下命令:
如果前面已经设置好了root权限,那么命令中就可以不带sudo了。
sudo make install
sudo chown -R username /usr/local/lsmcd
守护进程
LSMCD 现在应该已成功安装,现在需要做的就是启用并启动守护进程。
systemctl enable lsmcd
systemctl start lsmcd
systemctl status lsmcd
验证 LSMCD 是否正在使用 telnet 运行。
telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
其他配置
如果您在单个服务器上运行 LSMCD,则可以使用 unix 套接字而不是默认的 TCP/IP 端口,这将提供显着的速度提升。为此,需要调整 “CACHED.ADDR“指令。
vi /lsmcd/conf/node.conf
修改 “CACHED.ADDR” to “UDS:///tmp/lsmcd.sock”.
#CACHED.ADDR=127.0.0.1:11211
CACHED.ADDR=UDS:///tmp/lsmcd.sock
重启
systemctl restart lsmcd
安装php扩展
如果是通过cyberpanel面板安装的openlitespeed服务器环境,那么php扩展已经默认安装了,此处略过。
设置litespeed对象存储
litespeed会默认检测Memcached是否安装成功、并且联通。