varnish

管理进程:编译VCL并应用新配置,监控varnish,初始化varnish,CLI接口

child/cache:

Acceptor:接收新的连接请求;

worker threads:处理用户请求;

Expiry:清理缓存中的过期对象;

日志:Shared Memory Log,默认90M,前一部分为计数器,后一部分为请求相关的数据

VCL:Varnish Configuration language

缓存策略配置接口:

基于域的简单编程语言:

内存分配和回收;

malloc(),free()

varnish如何存储缓存对象:

file:单个文件;重启后失效

malloc:内存: 

persistent:基于文件的持久存储;

配置varnish的三种应用

1.配置varnish应用程序的命令行参数

监听的socket,使用的存储类型等等,额外的配置参数;

-p param=value

-r param,。。:设定只读参数列表;

/etc/varnish/varnish.params

2.-p选项指明的参数;

运行时参数:

可在程序运行中,通过cli进行配置

3.vcl:配置缓存系统的缓存机制;

通过vcl配置文件进行配置;

先编译,后使用,依赖与c编译器

配置文件:

配置端口:

/etc/varnish/varnish.params

配置后端服务器:

/etc/varnish/default.vcl 

连接varnish:

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

varnishlog/varnishncsa  查看日志

varnishtop

varnishstat