Varnish+缓存Web站

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Varnish+缓存Web站相关的知识,希望对你有一定的参考价值。

Varnish+缓存Web站

 


技术分享

服务器IP配置如图:

OS

IP

子网掩码

路由网关

Centos6.6

(Web1静态)

Eth0:192.168.10.1

255.255.255.0


Centos6.6

(Web2动态)

Eth0:192.168.10.2

255.255.255.0


Centos6.6

(varnish)

Eth0:192.168.26.210

255.255.252.0

192.168.25.3

Eth1:192.168.10.3

255.255.255.0


 

技术分享

 

技术分享

 

 

 

技术分享

安装varnish:yum install varnish y

      Rpm ql varnish #查看varnish配置信息

技术分享

 

 

技术分享

 

 

技术分享

 

启动varnish:

service  varnish start

ss -tnlp      #6082端口为管理端口,80为代理端口

 

技术分享

 

登陆varnish管理:

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

 

技术分享

 

手动创建一个简单VCL:

vim /etc/varnish/test.vcl

backend webser1 {

  .host = "192.168.10.1";

  .port = "80";

}

 

技术分享

 

vcl.load test1 /etc/varnish/test.vcl   #指定VCL配置文件需要绝对路径否则报错

vcl.list  #显示已经存存的配置项和状态信息

 

技术分享

使用某个设置项:

vcl.use test1        #test1为配置项名字

技术分享

 

 

技术分享

 

技术分享

 

 

技术分享

 

技术分享

 

查看访问状态:

技术分享

 

vcl.use test3 

技术分享

 

技术分享

再查看访问状态:

技术分享

 

配置文件(动静分离web站后端服务器缓存):

[[email protected] varnish]# vim test1.vcl

backend web1 {

    .host = "192.168.10.1";

    .port = "80";

}

 

backend web2 {

    .host = "192.168.10.2";

    .port = "80";

}

sub vcl_deliver {

  if (obj.hits > 0 ) {

    set resp.http.X-Cache = "HIT form" server.ip;

  } else {

    set resp.http.X-Cache = "MISS";

  }

 

}

sub vcl_recv {

 if (req.url ~ "\.(html|css|js)$") {

    set req.backend = web1;

 } else {

    set req.backend = web2;

}

}

技术分享

 

技术分享

访问:http://192.168.26.210/index.html

          http://192.168.26.210/test.html

访问的内容为web1上内容

技术分享

 

技术分享

 

 

 

输入:http://192.168.26.210/index.php

           http://192.168.26.210/baidu.jpg

展示为:web2网站内容

 

技术分享技术分享

顺便测试下缓存的图片效果:将web上的图片文件更改名字再进行访问

 

技术分享

 

技术分享

过两分钟后再访问缓存失效了,访问会报错

技术分享


本文出自 “在路上” 博客,请务必保留此出处http://jdonghong.blog.51cto.com/3473478/1883337

以上是关于Varnish+缓存Web站的主要内容,如果未能解决你的问题,请参考以下文章

使用Varnish加速Web

WEB缓存系统之varnish基础入门

使用Varnish加速Web

varnish实现web加速缓存

web缓存及varnish 使用基础

varnish---反向代理web加速缓存服务器和CDN的推送