LAMP+Varnish缓存详解(二)——单网站缓存

简介: LAMP+Varnish缓存详解(二)——单网站缓存

今天继续给大家介绍Linux运维的相关知识,本文主要内容是LAMP架构配合Varnish缓存的单网站缓存实战。

一、Varnish安装
我们今天在一台设备上,安装LAMP+Varnish架构,实现Varnish对网站内容的缓存,Apache监听80端口,Varnish监听6081端口。
首先,我们上传Varnish的安装包,并进行解压,结果如下所示:

可以看出,Varnish的安装包中有三个文件(图中有5个是因为有两个版本),分别是varnish安装文件、jemalloc安装文件,和varnish的依赖安装文件。varnish-lib是varnish的依赖安装文件,在安装varnish之前必须进行安装,jemalloc也是varnish必须要安装的文件,主要用于内存的分配。因此,我们在安装varnish时,需要依次执行以下命令:

rpm -ivh jemalloc-3.6.0-1.el7.x86_64.rpm
rpm -ivh varnish-libs-4.0.5-1.el7.x86_64.rpm
rpm -ivh varnish-4.0.5-1.el7.x86_64.rpm
1
2
3
如果在安装时,出现下列问题:

则说明我们需要安装redhat-rpm-config,执行命令:

yum install -y redhat-rpm-config
1
即可解决该问题。另外,Varnish的安装还要求系统中已经安装有gcc和gcc-c++,如果这两个编译器没有安装,也会报相应的错误,解决方法就是安装这两个软件即可。

二、Varnish配置
接下来,我们来进行Varnish的实战配置。在安装完Varnish后,首先打开Varnish的主配置文件:/etc/varnish/default.vcl,找到如下位置处:

讲讲其中的.host和.port修改为我们实际Apache服务器的IP地址和监听端口号。之后,找到该配置文件中的sub vcl_deliver模块,并在该模块下添加如下内容:

if (obj.hits > 0) {
set resp.http.X-Cache = "HIT from " + req.http.host;
set resp.http.X-Cache-Hits = obj.hits;
} else {
set resp.http.X-Cache = "MISS from " + req.http.host;
}
return (deliver);
1
2
3
4
5
6
7
添加完成后,效果如下所示:

上述命令采用VCL语言写成,主要是在Varnish的返回消息中添加命中有关的消息。但是!即使是不添加上述内容,我们的Varnish缓存依旧可以配置成功!
在上述配置全部完成后,执行命令:

systemctl start varnish
1
启动Varnish,发现系统监听6081端口,结果如下:

注意,在实战场景下,如果需要Varnish监听其他的端口,我们可以打开/etc/varnish/varnish.params文件,修改VARNISH_LISTEN_PORT参数即可修改Varnish的监听端口。

三、缓存效果检验
在上述所有配置全部完成后,我们尝试访问Varnish缓存,并查看访问结果,如下:

可以看到,通过Varnish缓存对Apache进行访问其效果是一样的,查看Varnish返回的消息头,发现了X-cache和X-Varnish字段表明该服务是通过Varnish进行访问的,由此可见,我们配置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/122710237

目录
相关文章
|
缓存 安全 UED
网站图片缓存设置不当可能会导致哪些问题?
【10月更文挑战第18天】网站图片缓存的合理设置至关重要,需要综合考虑图片的性质、更新频率、用户体验、服务器性能等多方面因素,以避免出现上述各种问题,确保网站的正常运行和用户信息的安全。
|
缓存 监控 测试技术
如何利用浏览器的缓存来优化网站性能?
【10月更文挑战第23天】通过以上多种方法合理利用浏览器缓存,可以显著提高网站的性能,减少网络请求,加快资源加载速度,提升用户的访问体验。同时,要根据网站的具体情况和资源的特点,不断优化和调整缓存策略,以适应不断变化的业务需求和用户访问模式。
696 63
|
存储 缓存 监控
网站的图片资源是否需要设置缓存?
【10月更文挑战第18天】网站的图片资源一般是需要设置缓存的,但要根据图片的具体特点和网站的需求,合理设置缓存时间和缓存策略,在提高网站性能和用户体验的同时,确保用户能够获取到准确、及时的图片信息。
|
缓存 弹性计算 应用服务中间件
如何使用 Wordpress?托管, 网站, 插件, 缓存
如何使用 Wordpress?托管, 网站, 插件, 缓存
|
缓存 开发工具
使用varnish缓存多个网站(三)
【8月更文挑战第9天】使用varnish缓存多个网站
184 5
|
存储 缓存 Linux
使用Varnish为网站加速(二)缓存一个网站
【8月更文挑战第9天】使用Varnish为网站加速安装使用缓存一个网站
132 1
|
7月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
2月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
|
3月前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
218 1
Redis专题-实战篇二-商户查询缓存
|
2月前
|
缓存 运维 监控
Redis 7.0 高性能缓存架构设计与优化
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Redis 7.0高性能缓存架构,探索函数化编程、多层缓存、集群优化与分片消息系统,用代码在二进制星河中谱写极客诗篇。