快速业务通道

高性能HTTP加速器Varnish(管理维护篇)

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-26
拥有帝国一切,皆有可能。欢迎访问phome.net
  • 0 CLI - Rd ping
  • 0 CLI - Wr 200 PONG 1279032175 1.0
  • 0 CLI - Rd ping
  • 0 CLI - Wr 200 PONG 1279032178 1.0
  •  通过自带的varnishncsa指令得到类似apache的combined输出格式的日志.
    例如:

    1. [root@varnish-server ~]#/usr/local/varnish/bin/varnishncsa -n /data/varnish/cache

    也可以将日志输出到一个文件中,通过“-w”参数指定即可:

    1. [root@varnish-server ~]#/usr/local/varnish/bin/varnishncsa -n /data/varnish/cache \
    2. >-w /data/varnish/log/varnish.log

    varnish两种日志输出形式中,第一种在大多数情况下并不是的,这里重点介绍下第二种日志输出形式的配置方式.
    下面编写一个名为varnishncsa的shell脚本,并把此文件放到/etc/init.d目录下,varnishncsa脚本的完整内容如下所示:

    1. #!/bin/sh
    2. if [ "$1" = "start" ];then
    3. /usr/local/varnish/bin/varnishncsa -n /data/varnish/cache -f |/usr/sbin/rotatelogs /data/varnish/log/varnish.%Y.%m.%d.%H.log 3600 480 &
    4. elif [ "$1" = "stop" ];then
    5. killall varnishncsa
    6. else
    7. echo $0 "{start|stop}"
    8. fi

    在这个脚本中,通过管道方式把日志导入到“rotatelogs”中,而rotatelogs是一个文件分割工具,它可以通过指定时间或者大小等方式来分割日志文件,这样就避免了日志文件过大造成的性能问题. 拥有帝国一切,皆有可能。欢迎访问phome.net
    其中,“3600”是一个小时,也就是每个小时生成一个日志文件,“480”是一个时区参数,中国是第八时区,相对于UTC相差480分钟,如果不设置480这个参数,将导致日志记录时间和服务器时间相差8小时.关于rotatelogs命令用法,这里不再详细讲述.
    通过对varnish日志的监控,可以知道varnish的运行状态和情况.
    接着,将此脚本进行授权:

    1. [root@varnish-server ~]#chmod 755 /etc/init.d/varnishncsa

    就可以通过如下方式,进行启动、关闭日志等操作了:

    1. [root@varnish-server ~]#/etc/init.d/varnishncsa {start|stop }

    四、管理Varnish

    1、查看varnish进程
    通过上面章节的讲解,varnish已经可以启动起来了,执行如下命令可以查看varnish是否正常启动:

    1. [root@varnish-server ~]# ps -ef|grep varnish
    2. root 29615 1 0 00:20 pts/1 00:00:00 /usr/local/varnish/bin/varnishncsa -n /data/varnish/cache -f
    3. root 29616 1 0 00:20 pts/1 00:00:00 /usr/sbin/rotatelogs /data/varnish/log/varnish.%Y.%m.%d.%H.log 3600 480
    4. root 29646 1 0 00:21 ? 00:00:00 /usr/local/varnish/sbin/varnishd -P /var/run/varnish.pid -a 192.168.12.246:80 -T 127.0.0.1:3500 -f /usr/local/varnish/etc/vcl.conf -u varnish -g varnish -w 2,51200,10 -n /data/varnish/cache -s file,/data/varnish/cache/varnish_cache.data,4G
    5. varnish 29647 29646 0 00:21 ? 00:00:00 /usr/local/varnish/sbin/varnishd -P /var/run/varnish.pid -a 192.168.12.246:80 -T 127.0.0.1:3500 -f /usr/local/varnish/etc/vcl.conf -u varnish -g varnish -w 2,51200,10 -n /data/varnish/cache -s file,/data/varnish/cache/varnish_cache.data,4G 拥有帝国一切,皆有可能。欢迎访问phome.net

    从命令执行结果可知,PID为29615和29616的进程是varnish的日志输出进程,而PID为29646的进程是varnishd的主进程,并且派生出了一个PID为29647的子进程.这点跟apache类似.

    凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

    分享到: 更多

    Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

    地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

    电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

    《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号