企业运维之Varnish

一、Varnish概述

Varnish是一款高性能的开源HTTP加速器,可以有效降低web服务器的负载,提升访问速度。当部署上Varnish之后,web请求的处理过程如下:
客户端的请求将首先被Varnish接受。Varnish将分析接收的请求,并将其转发到后端的web服务器上。后端的web服务器对请求进行常规的处理,并将依次将处理结果返回给Varnish。
Varnish的核心功能是将后端web服务器返回的结果缓存起来,并且缓存是放在内存中的,比放在磁盘上快。如果发现后续有相同的请求,Varnish将不会将这个请求转发到web服务器,而是返回缓存中的结果。这将有效的降低web服务器的负载,提升响应速度,并且每秒可以响应更多的请求。
Varnish特点:
1.基于内存缓存,重启后数据将消失
2.通过fork形式打开多进程来做处理,合理的使用所有核来处理相应的请求
Varnish处理缓存的顺序:
接受到请求 –- 分析请求(分析你的URL,分析你的首部) – hash计算 – 查找缓存 – 新鲜度检测 — 访问源 — 缓存 – 建立响应报文 – 响应并记录日志

二、Varnish安装

1.安装varnish时最好用rpm包来安装,需要的软件包如下:

varnish-6.4.0-1.el7.x86_64.rpm
jemalloc-3.6.0-1.el7.x86_64.rpm

2.安装完成后查看varnish的启动文件

vim /usr/lib/systemd/system/varnish.service

在这里插入图片描述将服务端口改为80,指定的配置文件为/etc/varnish/default.vcl
在这里插入图片描述3.更改安全限制文件

vim /etc/security/limits.conf

在文件中进行配置使得系统允许varnish打开指定数量的文件以及内存锁定
在这里插入图片描述4.开启varnish

systemctl start varnish

5.设定后端主机
即访问varnish主机时将访问请求转交给哪台主机

vim /etc/varnish/default.vcl

在这里插入图片描述在30主机上安装打开httpd,并在发布页面写入www.server2.com
6.重启varnish服务
再次访问varnish主机可以看到上述发布页面中的内容

三、Varnish功能—缓存

1.修改配置文件

vim /etc/varnish/default.vcl

设定命中缓存和未命中缓存的提示语
在这里插入图片描述2.重启varnish服务
3.测试(在测试主机40上进行测试)
在这里插入图片描述

四、varnish清理缓存的方式

1.清理所有缓存

varnishadm ban req.url "~"/

2.只清理指定页面(index.html)的缓存

varnishadm ban req.url "~"/index.html

五、varnish功能—反向代理,负载均衡

5.1 不同的域名对应不同的服务端

1.更改配置文件

vim /etc/varnish/default.vcl

在这里插入图片描述在这里插入图片描述2.测试:varnish主机能够对应两台不同的后端,其中30主机的发布页面为www.server2.com,40主机的发布页面为www.server3.com
在这里插入图片描述

5.2 同一域名对应不同的服务端

1.更改配置文件
导入调度器模块
在这里插入图片描述在这里插入图片描述2.测试:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43834060/article/details/105834019