序:
本系列应该是朋友们见过的Varnish相关文章中最专业最深入最全面的文章了,毕竟小编熬了这么多夜,其实原计划一篇写完方便大家观赏,谁想微信文章字数限制最多2W字。因此也只能分系列分享给大家,在此也只能辛苦各位朋友分开阅览。当然了,机灵的朋友已经加收藏了,聪明的朋友更是添加关注公众号了,毕竟这个公众号文章的阅读率辣么高。当然了,彩蛋在最后
,如果大家觉得还有所收获,请不要吝惜您的双手,大方分享,让更多的朋友受益。
Varnish共享内存日志管理 Varnish Shared memory Log (VSL)
Varnish的所有日志信息,包括请求、缓存和响应均通过VSL记录。管理员可通过varnish提供的系列日志管理工具来实时查看日志,虽稍有延迟但通常不会有明显感知。其次需知晓的是VSL的日志是覆盖循环擦写。
Varnish日志循环擦写内存有2个好处,其一是不会有历史旧数据,其二减少新内存开辟及循环时间,日志可以以极高的速度记录。当然,Varnish也保留了持久化功能。(具体是否开启官方没有明确建议,默认配置是不禁用,即只写内存。但就实际企业应用来讲,varnish在最前端承受着极大的请求及响应压力,且多数日志常规日志,不建议开启,有问题可开启排查日志
)
Varnish共享内存日志,简称VSL,也叫shm-log或SHMLOG,Varnish的绝大多数日志均由其记录,为了最大限度榨取服务器性能,Varnish的日志记录也均存储在内存中,但考虑内存容量问题,所以默认80M的大小限制,同时日志是覆盖循环读写,而且默认没有持久化。而这一切都是为了最大化利用服务器性能。简而言之,Varnish日志存储方式有如下特点:
VSL循环记录日志,即日志没有开始和结尾,最好的判别方式是根据时间缀,
varnishlog -d
查看旧的日志;VSL缓冲区大小黑夜80MB且默认不持久化存储。
VSL日志默认以tmpfs临时文件格式存储,可通过修改/etc/fstab配置文件修改存储方式(修改完需重启varnish进程);
shm-log 日志通常存储在/var/lib/varnish目录(the shm-log is normally kept under /var/lib/varnish/ or equivalent locations);
如果VLS没有引起磁盘I/O负载或服务器性能压力,默认不需要做额外配置。
今天先到这里,明天还要上班,朋友们晚安
这段时间个人工作上进度delay比较厉害,每次能更新的内容比较少,还请朋友见谅。毕竟工作是饭碗 ^0^
下节内容预告
Varnish常用日志分析工具介绍