varnish基础应用

varnish主要用于缓存服务器,还有一些其他软件也能实现缓存功能,例如memcached但是它主要缓存的是数值数据,适用于缓存mysql的数据;而nginx也有缓存功能,也可在反代时为后端主机提供缓存,但是nginx常用于反代服务器使用,也不建议一个主机承载多任务工作,这样会代理性能降低;而varnish正是常作为http协议的反代工作的。


现代互联网服务,为了提供用户良好的体验,访问网站打开页面的速度要求非常快,所以各网站基本都把资源尽量放在客户端最近的访问节点上,即常说的把资源推送到用户的家门口。实现方式常用的有两种方式:一种是使用CDN,另一种就是把用户请求都指向一个入口,在客户请求的入口处部署缓存服务器,把热点资源都放在离用户最近的缓存服务器上。varnish就工作在第二种方式中,当做缓存服务器给用户带来良好的访问体验的。


同样功能的还有一款软件squid,与varnish的关系,相当于httpd与nginx的关系;squid出现比较早,但面临较大负载时工作非常稳定,且功能丰富,同时支持正向、反向代理;varnish是比较轻量,主要用来实现反代;但超过承受的负载时,可能很不稳定;


安装varnish:

]# yum install varnish

安装varnish的文档包

]# yum -y install varnish-docs


varnish主机:172.18.11.111

后端web主机:

RS1:172.18.11.11

RS2:172.18.11.12


varnish主机:

]# vim /etc/varnish/default.vcl

wKiom1dJt9ah8ONbAAB6u8Tq3vI776.png

]# vim /etc/varnish/varnish.params

wKioL1dJuUTQQ6hHAACgRIlcJjI092.png


启动varnish专用命令行:

]# varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082

vcl.load test1 default.vcl

显示:

wKioL1dJulHCIk9nAAAIpP5CDsU360.png

没问题后,再输入:

vcl.use test1

显示:

wKioL1dJuoSC2c8wAAAIbLV0KKQ594.png

没问题后,可浏览器测试。


分别在后端两web服务器提供测试页:

]# vim /var/www/html/index.html

<h1>RS1 172.18.11.11</h1>


]# vim /var/www/html/index.html

<h1>RS2 172.18.11.12</h1>


浏览器输入:http://172.18.11.111/

刷新后交替显示:

wKioL1dJu27QEblmAAA3b3YgxvY744.png

wKiom1dJunXyj9GyAAA0K-Vkyjs668.png

停掉后端一台web服务器,继续访问仍能提供web服务。











本文转自 crystaleone 51CTO博客,原文链接:http://blog.51cto.com/linsj/1784160,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值