lighttpd配置之代理、负载均衡(mod_proxy)

lighttpd配置之代理、负载均衡(mod_proxy)

使用proxy可以使lighttpd成为一个代理服务器。例如将java的请求全都转向给jboss来处理
mod_proxy有三个标签:
proxy.debug,0或者1. 表示是否启动调试模式。 1表示启动
proxy.balance,使用负载均衡的模式。可以使“hash”,“round-robin”,”fair”三种模式之一。
’round-robin’ 交替轮训, ‘hash’ 根据请求的url产生一个 hash值,来确保同样的请求的url都访问同样的主机
‘fair’ is the normal load-based, passive balancing.

语法结构

  ( <extension> =>
      ( [ <name> => ]
        ( "host" => <string> ,
          "port" => <integer> ),
        ( "host" => <string> ,
          "port" => <integer> )
      ),
      <extension> => …
    )
 

* : 表示请求url的文件扩展名或者文件前缀 (如果以”/”开始); 可以是空 (“”) 表示所有的请求
* : 可选名称
* “host”: 被代理的服务器的ip
* “port”: 被代理服务器的端口,默认是80

如:

proxy.server = ( ".jsp" =>
                        ( (
                            "host" => "10.0.0.242",
                            "port" => 8080
                          ) )
                      )
 

再如:

$HTTP [ "host" ] == "www.domain.me" {
        proxy.server  = ( "" =>
        ( (
                "host" => "127.0.0.1",
                "port"=> "8080"  
        ) )
        )
}
 

负载均衡的例子,例如有8个squid缓存,需要用lighttpd做负载均衡

  $HTTP [ "host" ] == "www.example.org" {
    proxy.balance = "hash"
    proxy.server  = ( "" => ( ( "host" => "10.0.0.10" ),
                              ( "host" => "10.0.0.11" ),
                              ( "host" => "10.0.0.12" ),
                              ( "host" => "10.0.0.13" ),
                              ( "host" => "10.0.0.14" ),
                              ( "host" => "10.0.0.15" ),
                              ( "host" => "10.0.0.16" ),
                              ( "host" => "10.0.0.17" ) ) )
  }
 

当一个服务器宕机后,它上面的请求将被转移给其他设备server

你可能感兴趣的:(lighttpd配置之代理、负载均衡(mod_proxy))