码迷,mamicode.com
首页 > 其他好文 > 详细

Varnish原理及基本使用

时间:2018-07-10 12:58:10      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:反向代理   了解   configure   python   问题   在北京   编译   开源   gb2312   

Varnish:缓存代理服务器它是一款高性能且开源的反向代理服务器,具有高性能、速度块、管理方便等优点。

例如:客户机要在成都访问sina,sina的服务器在北京,由于距离较远,访问速度很慢,这时为了解决此问题我们可以使用Varnish。

它相当于客户机访问Varnish,Varnish在Cache池里看有没有sina的页面数据,如果有就直接返回给客户;如果没有Varnish会请求sina服务器,sina服务器把页面数据返回给Varnish,Varnish把页面数据传给客户机,并且把此数据存储到自己的Cache池里,下次其它客户机来访问相同页面时会直接把该数据返回给客户机。


部署Varnish

1、安装依赖包

[root@proxy ~]yum -y install gcc  readline-devel  ncurses-devel  pcre-devel 

[root@proxy ~]yum -y install python-docutils-0.11-0.2.20130715svn7687.el7.noarch.rpm(此包需要自己单独下载) 


2、创建Varnish用户

[root@proxy ~]useradd  -s  /sbin/nologin  varnish


3、源码编译安装(软件包自己下载)

[root@proxy ~]# tar -xf varnish-5.2.1.tar.gz

[root@proxy ~]# cd varnish-5.2.1

[root@proxy varnish-5.2.1]# ./configure

[root@proxy varnish-5.2.1]# make && make install


4、修改配置文件,在varnish-5.2.1目录里的etc下有example.vcl文件 此文件是Varnish的配置文件

[root@proxy varnish-5.2.1]# cp  etc/example.vcl   /usr/local/etc/default.vcl

[root@proxy ~]# vim  /usr/local/etc/default.vcl

backend default {        

.host = "192.168.2.100";   //后端服务器地址

.port = "80";   //后端服务端口号

}


5、启动服务

[root@proxy ~]# varnishd  -f /usr/local/etc/default.vcl

//varnishd命令的其他选项说明如下:

//varnishd –s malloc,128M        定义varnish使用内存作为缓存,空间为128M

//varnishd –s file,/var/lib/varnish_storage.bin,1G 定义varnish使用文件作为缓存


其它操作

1、查看日志

varnishlog   #查看所有日志 

varnishncsa #连接时才会产生日志


2、更新缓存数据,在后台web服务器更新页面内容后,用户访问代理服务器看到的还是之前的数据,说明缓存中的数据过期了需要更新。

a、等,varnish会自动更新

b、输入varnishadm命令,执行 ban req.url  ~ .*     #清空缓存数据,支持正则表达式

Varnish原理及基本使用

标签:反向代理   了解   configure   python   问题   在北京   编译   开源   gb2312   

原文地址:http://blog.51cto.com/13759649/2139679

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!