标签:
本节包含了怎样通过varnish配置语言vcl来通知varnish如何处理http请求。
varnish是高度结构化的系统。大多数其他的系统使用配置指令,在那里你基本上打开和关闭大量的开关。而我们选择使用领域特定语言,被叫做VCL,来完成之前的功能。
每个进入的请求流通过varnish,同时你可以支配如何通过VCL代码来处理请求。你可以让某些后端直接处理请求,你可以改变请求和响应,或者让varnish拥有各种各样动作依赖于特定的处理请求和响应的阶段。这些特性让Varnish变成特别强力的http程序,而不仅仅是缓存。
varnish转换VCL成二进制代码,当请求到达这些代码将被执行。VCL对varnish的性能损耗是可以忽略不计的。
VCL文件将子程序组织在一起。不同的子程序在不同阶段被执行。一个是在我们收到请求时执行,其他的当从后端收到文件时执行。
如果你在你的子程序不调用某个动作,varnish将执行一些built-in(内建)的VCL代码。你可以看到这些内建的代码在builtin.vcl中注释的部分
本节包含以下:
VCL Syntax Built in subroutines Request and response VCL objects actions Backend servers Multiple backends Backends and virtual hosts in Varnish Directors Health checks Hashing Misbehaving servers Using inline C to extend Varnish VCL Examples Device detection
标签:
原文地址:http://my.oschina.net/monkeyzhu/blog/466923