Varnish是什么
Varnish作用是访问web速度的web加速器,被安装在web服务器之前,从而缓存web服务器的应用程序和数据,最后相应客户的请求。 功能与Squid服务器相似,都可以用来做HTTP缓存。与Squid不同之处在于,Squid是从硬盘读取缓存的数据,而Varnish把数据存放在内存中,直接从读取内存,避免了频繁在内存、磁盘中交换文件,所以Varnish要相对更高效,但也有缺点,内存中的缓存在服务器重启后会丢失。
Varnish架构:
Varnish初始化过程
varnish启动会产生两个进程:master进程 和 child进程
master进程:master进程负责启动工作,master进程会读取配置文件,根据指定的配置信息做出相应的动作,例如管理员在配置文件中分配了2G内存大小,它就会在内存中创建2G的存储空间; master进程还会创建并管理child进程。
child进程: child进程来处理后续任务,它会分配一些线程来执行不同的工作,例如:(1). 接受http请求 (2).为缓存对象分配存储空间 (3).清除过期缓存对象(4). 释放空间 碎片整理
2. 分配缓存过程:有一个对象