Varnish作用是访问web速度的web加速器,被安装在web服务器之前,从而缓存web服务器的应用程序和数据,最后相应客户的请求。 功能与Squid服务器相似,都可以用来做HTTP缓存。
创新互联建站服务项目包括雁峰网站建设、雁峰网站制作、雁峰网页制作以及雁峰网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,雁峰网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到雁峰省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
安装pcre
如果没有安装pcre,在编译varnish 2.0以上版本时,会提示找不到pcre库,而pcre库是为了兼容正则表达式,所以必须先安装pcre库。下面是pcre的安装过程:
[root@varnish-server ~]# tar -zxvf pcre-7.9.tar.gz
[root@varnish-server ~]# cd pcre-7.9/
[root@varnish-server ~]# ./config --prefix=/usr/local/pcre/
[root@varnish-server ~]# make && make install
安装Varnish
这里将Varnish安装到/usr/local/目录下,操作如下:
[root@varnish-server ~]# tar -zxvf varnish-2.1.2.tar.gz
[root@varnish-server ~]# cd varnish-2.1.2
[root@varnish-server ~]# export PKG_CONFIG_PATH=/usr/local/pcre/lib/pkgconfig
[root@varnish-server ~]# ./configuer --prefix=/usr/local/varnish \
>--enable-dependency-tracking
>--enable-debugging-symbols
>--enable-developer-warnings
[root@varnish-server ~]# make
[root@varnish-server ~]# make install
[root@varnish-server ~]# cp redhat/varnish.initrc /etc/init.d/varnish
[root@varnish-server ~]# cp redhat/varnish.sysconfig /etc/syscinfug/varnish
其中,“PKG_CONFIG_PATH”是指定Varnish查找pcre库的路径,至此,Varnish安装完毕。
由于篇幅限制,在这儿是介绍VCL内置函数的意义,请大家见谅!
vcl_recv函数
用于接受和处理请求。当请求达到并被成功接收后被调用,通过判断请求的数据来决定如何处理请求。 此函数一般以如下几个关键字结束:
>pass:表示进入pass模式,把请求控制权交给vcl_pass函数。
>pipe:表示进入pipe模式,请把请求控制权交给vcl_pipe函数。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_pipe函数
此函数在进入pipe模式时被调用,用于将请求直接传递至后端主机,在请求和返回的内容没有改变的情况下,将不变的内容返回给客户端,直到这个连接被关闭。 此函数一般以如下几个关键字结束:
>pipe:表示进入pipe模式,请把请求控制权交给vcl_pipe函数。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_pass函数
此函数在进入pass模式时被调用,用于将请求直接传递至后端主机。后端主机在应答数据后将应答数据发送给客户端,但不进行任何缓存,在当前连接下每次都返回最新的内容。 此函数一般以如下几个关键字结束:
>pass。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
lookup
表示在缓存中查找被请求的对象,并且根据查找的结果把控制权交给vcl_hit或者函数vcl_miss。
vcl_hit函数
在执行lookup指令后,在缓存中找到请求的内容后将自动调用该函数。 此函数一般以如下几个关键字结束:
>pass:表示进入pass模式,把请求控制权交给vcl_pass函数。
>deliver:表示将找到的内容发送给客户端,并把控制权交给vcl_deliver。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_miss函数
在执行lookup指令后,在缓存中没有找到请求的内容时自动调用该方法。此函数可用于判断是否需要从后端服务器获取内容。 此函数一般以如下几个关键字结束:
>pass。
>fetch:表示从后端获取请求的内容,并且把控制权交给vcl_fetch。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_fetch函数
在后端主机更新缓存并且获取内容后调用该方法,接着,通过判断获取的内容来决定是将内容放入缓存,还是直接返回给客户端。 此函数一般以如下几个关键字结束:
>pass。
>deliver:表示将找到的内容发送给客户端,并把控制权交给vcl_deliver。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_deliver函数
将在缓存中找到请求的内容发送给客户端前调用该方法。 此函数一般以如下几个关键字结束:
>deliver:表示将找到的内容发送给客户端,并把控制权交给vcl_deliver。
>error code [reason]:表示返回“code”给客户端,并放弃处理该请求。
vcl_timeout函数
在缓存内容到期前调用该函数。 此函数一般以如下几个关键字结束:
>descard:表示从缓存中清楚该内容。
>fetch
vcl_discard函数
在缓存内容到期后或缓存空间不足时,自动调用该函数。 此函数一般以如下几个关键字结束:
>descard
>keep:表示将内容继续保留在缓存中。
分享标题:讲解一下Varnish安装与配置
浏览地址:http://www.mswzjz.com/qtweb/news26/188376.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联