Apache提供了2种方式与Tomcat实现集群,即基于apache的mod_jk以及mod_proxy。mod_jk配置较复杂,一般是老版本在使用,目前一般常用的是mod_proxy方式。
反向代理负载均衡 (Apache+JK+Tomcat)
使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式。
Apache主要负责:负载均衡(LoadBalancer),故障转移(Failover)。
Tomcat主要负责:Session复制和Session共享。
Proxy代理负载均衡 (Apache+Proxy+Tomcat)
如果要利用apache的proxy来做负载均衡,首先需要启用Apache的几个模块:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule proxy_http_module modules/mod_proxy_http.so
mod_proxy提供代理服务器功能,mod_proxy_balancer提供负载均衡功能, mod_proxy_http让代理服务器能支持HTTP协议。如果把mod_proxy_http换成 其他协议模块(如mod_proxy_ftp),或许能支持其他协议的负载均衡, 有兴趣的朋友可以自己尝试一下。