haproxy + varnish cache配置

本文详细介绍了Varnish缓存服务器及HAProxy负载均衡器的具体配置方法,包括如何设置后端服务器、处理不同类型的请求以及启动Varnish的服务脚本。此外,还提供了多站点配置Varnish的例子及在OpenSuse下的安装指导。

varnish配置

vi /etc/varnish/vcl.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
backend default

 {

        set backend.host = "192.168.1.118"
;
        set backend.port = "80"
;
}

 
sub vcl_recv {

        # pass mode can't handle POST (yet)

        if

 (req.request == "POST"
) {

                pipe;
        }

 
        # force lookup even when cookies are present
        #if

 (req.request == "GET"
 && req.http.cookie) {

        #        lookup;
        #}

        #静态文件CACHE
        if

 (req.request == "GET"
 && req.url ~ "/.(gif|jpg|swf|css|js)$"
) {

                lookup;
        }

}

 
sub vcl_fetch {

        # force minimum ttl of 180 seconds
        if

 (obj.ttl < 180s) {

                set obj.ttl = 180s;
        }

}

 



haproxy 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        retries 3
        option redispatch
        maxconn 2000
        contimeout      5000
        clitimeout      50000
        srvtimeout      50000
 
listen webfarm 0.0.0.0:80
       mode http
       stats uri /haproxy-stats
       stats realm Haproxy/ statistics
       stats auth another:another
       balance roundrobin
       cookie SERVERID insert indirect
       option httpchk HEAD /ha_check.html HTTP/1.0
       server webA 127.0.0.1:8080 cookie A check



启动varnish.sh:

1
2
3
4
5
6
7
8
9
10
11
#!/bin/sh
# file: start.sh
date -u
varnishd /
-a 127.0.0.1:8080 /
-s file,/var/cache/varnish/V,1024m /
-f /etc/varnish/vcl.conf /
-p thread_pool_max=1500 /
-p thread_pools=5 /
-p listen_depth=512 /
-p client_http11=on /



附varnish多站点配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
backend www {

       set backend.host = "www.chinajavaworld.com"
;
       set backend.port = "80"
;
         }

 
backend blog {

       set backend.host = "blog.chinajavaworld.com"
;
       set backend.port = "80"
;
         }

 
backend image {

      set backend.host = "image.chinajavaworld.com"
;
      set backend.port = "80"
;
         }

 
sub vcl_recv {

      if

 (req.http.host ~ "^(www.)?chinajavaworld.com$"
) {

            set req.http.host = "www.chinajavaworld.com"
;
            set req.backend = www;
      }
 elsif (req.http.host ~ "^blog.chinajavaworld.com$"
) {

            set req.backend = blog;
      }
 elsif (req.http.host ~ "^image.chinajavaworld.com$"
) {

            set req.backend = image;
      }
 else

 {

            error 404 "Unknown host"
;
}



附varnish in OpenSuse安装

1
2
rpm -ivh libvarnish0-1.1-3.2.i586.rpm
rpm -ivh varnish-1.1-3.2.i586.rpm



Get rpm from
http://download.opensuse.org/repositories/server:/http/openSUSE_10.3/i586

平均得分
(0 次评分)




【激光质量检测】利用丝杆与步进电机的组合装置带动光源的移动,完成对光源使用切片法测量其光束质量的目的研究(Matlab代码实现)内容概要:本文研究了利用丝杆与步进电机的组合装置带动光源移动,结合切片法实现对激光光源光束质量的精确测量方法,并提供了基于Matlab的代码实现方案。该系统通过机械装置精确控制光源位置,采集不同截面的光强分布数据,进而分析光束的聚焦特性、发散角、光斑尺寸等关键质量参数,适用于高精度光学检测场景。研究重点在于硬件控制与图像处理算法的协同设计,实现了自动化、高重复性的光束质量评估流程。; 适合人群:具备一定光学基础知识和Matlab编程能力的科研人员或工程技术人员,尤其适合从事激光应用、光电检测、精密仪器开发等相关领域的研究生及研发工程师。; 使用场景及目标:①实现对连续或脉冲激光器输出光束的质量评估;②为激光加工、医疗激光、通信激光等应用场景提供可靠的光束分析手段;③通过Matlab仿真与实际控制对接,验证切片法测量方案的有效性与精度。; 阅读建议:建议读者结合机械控制原理与光学测量理论同步理解文档内容,重点关注步进电机控制逻辑与切片数据处理算法的衔接部分,实际应用时需校准装置并优化采样间距以提高测量精度。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值