免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1186 | 回复: 0
打印 上一主题 下一主题

varnish cache 配置使用 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-06 11:21 |只看该作者 |倒序浏览
varnishd 配置及其使用
varnishd是一款全新的cache软件,据作者说采用的是最新的软件体系机构,和现在的硬件体系配合紧密。远胜过以前的squid
varnishd简单安装
1.下载varnishd
varnish 官方网站是
http://varnish.projects.linpro.no/
2.编译,没什么说的,默认即可  
tar -zxvf varnish-1.1.1.tar.gz;cd varnish-1.1.1; ./configure --prefix=/home/admin/varnishd;make ;make install
3.关于varnishd的启动
进入 /home/admin/varnishd/sbin/,使用 varnishd启动
启动参数说明
   -a address:port              # varnishd httpd监听地址及其端口
    -b address:port              # 后台服务器地址及其端口
                                 #    -b
                                 #    -b ':'
    -d                           # 使用debug模式
    -f file                      # varnishd 服务器存取规则文件
    -F                           # Run in foreground
    -h kind[,hashoptions]        # Hash specification
                                 #   -h simple_list
                                 #   -h classic  [default]
                                 #   -h classic,
    -n dir                       # varnishd working directory
    -P file                      # PID file
    -p param=value               # 服务器参数,用来优化性能
    -s kind[,storageoptions]     # 缓存内容存放方式
                                 #   -s malloc
                                 #   -s file  [default: use /tmp]
                                 #   -s file,
                                 #   -s file,,
    -t                           # Default TTL
    -T address:port              # telnet管理地址及其端口
    -V                           # version
    -w int[,int[,int]]           # 工作线程数
                                 #   -w
                                 #   -w min,max
                #   -w min,max,timeout [default: -w1,1000,120]
一般使用varnishd -a address:port -b address:port 其他使用默认即可启动
注意:vcl 中指定 后台服务器的话就不用使用-b 参数了
4.关于vcl文件的使用说明
vcl是varnishd的存取策略,即varnishd的配置文件
#基本格式如下指定后台服务器机器端口
          backend www {
             set backend.host = "
www.example.com
";
             set backend.port = "http";
         }
   #acl访问控制
            acl local {
             "locahost";         /* myself */
             "10.0.0.1"/8;       /* and everyone on the local network */
             ! "10.0.0.23";      /* except for the dialin router */
         }
   #如果使用虚拟主机,请参照下面代码
            backend www {
             set backend.host = "
www.example.com
";
             set backend.port = "80";
         }
         backend images {
             set backend.host = "images.example.com";
             set backend.port = "80";
         }
         sub vcl_recv {
             if (req.http.host ~ "^(
www.)?example.com$
") {
                 set req.backend = www;
             } elsif (req.http.host ~ "^images.example.com") {
                 set req.backend = images;
             } else {
                 error 404 "Unknown virtual host";
             }
         }
    #关于cache存在时间设置
             sub vcl_fetch {
             if (obj.ttl
大家可以使用-p参数在启动时候进行配置和优化
例如
/home/admin/varnish/sbin/varnishd -f /etc/varnish/vcl.conf \
-a 172.16.189.1:3128 \
-s malloc \
-p user root -p group root \
-p default_ttl 14400 -p thread_pool_max 8000 -p send_timeout 20 \
-p srcaddr_ttl 720 -p backend_http11 on -p client_http11 on \
-w 4000,12000,10 -T 127.0.0.1:8080
6.关于varnishd的管理
管理功能的启用需要在启动varnishd的时候 启动 -T参数指定 telnet管理使用的地址和端口
使用telnet localhost 8080,然后输入help参看相关的管理选项
或者使用 /home/admin/varnishd/bin/varnishadm -T localhost:8080 cmd进行管理
使用/home/admin/varnishd/bin/varnishstat 来查看varnishd的运行情况
7.关于log
使用home/admin/varnishd/bin/varnishlog  和varnishncsa查看服务器访问log或者让其输出到文件来记录log




本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/47198/showart_375385.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP