高性能反向代理服务器Varnish安装与使用

Posted 吴柯的运维笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高性能反向代理服务器Varnish安装与使用相关的知识,希望对你有一定的参考价值。


Varnish是一款高性能且开源的反向代理服务器和http加速器。

由于:Squid缓存在/var/spool/squid/硬盘下;

Varnish缓存在内存上。

因此:Varnish速度更快、性能更高、管理更方便等。

但是:Varnish功能并没有Squid丰富,比如不能‘翻墙’等。


一、Varnish代理服务器安装:

(编译安装)

高性能反向代理服务器Varnish安装与使用


二、修改配置文件:

#vim  /etc/sysconfig/varnish

66行:VARNISH_LISTEN_PORT=80        #默认端口

89行:VARNISH_STORAGE_SIZE=64M     #定义缓存大小

92行:VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"      #基于内存方式缓存


#vim  /etc/varnish/default.vcl    #后台web服务器信息

backend default {

     .hosts="192.168.2.100";

     .port="80";

}


注意:关闭squid,或者关闭httpd


三、启服务:

#/etc/init.d/varnish   start

(报错的话看防火墙有没有打开)


查看状态:

#netstat -nptlu | grep 80

问题:

1.日志:

varnishlog    #varnish 日志

varnishncsa    #查看有多少人访问

2.缓存过期

①等等

②实时性高的如价格等,不推荐用缓存


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

   #查看文件

>ban.url  .*      #全部清除


ban的相关用法

1.>ban.url /download/

#清理所有域名下download下的缓存


2.匹配域名和url正则

>ban req.http.host == "example.com" && req.url ~ ".png$"

#清理example.com域名下所有png文件的缓存


3、根据大小进行处理

>req.url !~ ".ogg$" && obj.size > 10MB

#以上是清理所有大于10MB的ogg文件。


4、加cookile参数的清理

>req.http.host ~ "^(?i)(www.)example.com$" && obj.http.set-cookie ~ "USERID=1663"

#这里是处理无论是www.example.com还是example.com下的cookile值USERID=1663的所有缓存 。


推荐阅读:













吴柯的运维笔记

BY wukeyy18s



以上是关于高性能反向代理服务器Varnish安装与使用的主要内容,如果未能解决你的问题,请参考以下文章

基于Centos 7 部署Varnish缓存代理服务器

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

Varnish反向代理缓存服务器

Varnish缓存代理简介与配置

varnish缓存代理

varnish 4.0 缓存代理配置