apace與tomcat的負載均衡及叢集配置步驟:
一:linux下安裝apache
1: 下載下傳httpd-2.2.11.tar.gz 并解壓: tar zxvf httpd-2.2.11.tar.gz
2: 進入解壓後的目錄。
3: ./configure --prefix=/opt/apachenew --enable-mods-shared=proxy
4: make
5: make install
6:将httpd.conf的ServerName注釋去掉,并改成192.168.0.104:80。不然apache啟動的時候會報一個警告。
7: ./bin/apachectl start //stop restart
檢視編譯進apache的子產品: httpd -l
二:linux下安裝tomcat
下載下傳apache-tomcat-6.0.20.tar.gz 并解壓即可: tar zxvf apache-tomcat-6.0.20.tar.gz
三:配置tomcat
1: 修改關閉端口、http端口、AJP端口,防止端口沖突。
2:<!-- You should set jvmRoute to support load-balancing via AJP ie :-->
<Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1">
<!-- <Engine name="Catalina" defaultHost="localhost"> -->
3:将<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>的注釋去掉
四:配置apache
在httpd.conf最後加入:
# Proxypass Config
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from all
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Deny from all
Allow from all
</Location>
ProxyRequests Off
ProxyPass /balancer-manager !
ProxyPass / balancer://tomcatBalance/ stickysession=JSESSIONID nofailover=On
<Proxy balancer://tomcatBalance>
BalancerMember http://192.168.0.104:8080 loadfactor=1 route=tomcat1
BalancerMember http://192.168.0.104:8090 loadfactor=2 route=tomcat2
</Proxy>
到這個步驟就做到了負載均衡,并且支援會話保持,請求會被tomcat1,tomcat2按照不同的權重分流處理。
-----------------------------------------------------------------------------------------
session複制:
把nofailover=On改成nofailover=Off
如果需要session複制,還需要配置session複制。
在web.xml加上<distributable/>表明可應用分流處理,能進行Session的複制(注:distributable元素直接出現在discription元素之後,并且不包含子元素或資料)