apache作負載均衡

1)在windows下安裝的apache,具體安裝過程不說了.版本爲2.2php

2) 與weblogic作負載均衡html

     在httpd.conf打開web

         LoadModule proxy_module modules/mod_proxy.so算法

         LoadModule proxy_balancer_module modules/mod_proxy_balancer.soapache

         LoadModule proxy_http_module modules/mod_proxy_http.so windows

     把139上的 /spmwls/weblogic1036/wlserver_10.3/server/plugin/win/32/mod_wl_22.so 下載到後端

     C:\Program Files (x86)\phpStudy\Apache2\modules裏,而且在conf文件裏多加一句tomcat

          LoadModule weblogic_module modules/mod_wl_22.so服務器

     在conf文件的最後加上:session

          <IfModule mod_weblogic.c>

   WeblogicCluster 10.4.119.139:12501,10.4.119.142:12501

   MatchExpression *.*

   WLLogFile "C:/Program Files (x86)/phpStudy/Apache2/logs/wlproxy.log"

   Debug On

   DebugConfigInfo On

   KeepAliveEnabled On

   KeepAliveSecs 15

</IfModule>

ProxyRequests Off

ProxyPreserveHost On

<Proxy balancer://mycluster>

BalancerMember http://10.4.119.139:12501

BalancerMember http://10.4.119.142:12501

</Proxy>

ProxyPass / balancer://mycluster/

以後重啓apache,便可經過http://localhost

訪問139與142,還有些負載均衡的算法啥的,之後再補充

3) 與tomcat負載均衡

在httpd.conf裏,

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

而且:

# add by xh

<IfModule mod_info.c>

    <Location /balancer-manager>  

        SetHandler balancer-manager  

        Order Deny,Allow  

        #Deny from all  

        Allow from localhost ip6-localhost  

    </Location> 

</IfModule>

ProxyPass / balancer://tomcatcluster/

#lbmethod=byrequests stickysession=JSESSIONID nofailover=Off timeout=50 maxattempts=3   

ProxyPassReverse / balancer://tomcatcluster/    

ProxyPreserveHost On  

<Proxy balancer://tomcatcluster>   

BalancerMember ajp://localhost:8009 route=tomcat1   

BalancerMember ajp://127.0.0.1:8010 route=tomcat2

#BalancerMember http://10.4.101.72:8088 route=tomcat1 

#BalancerMember http://10.4.101.51:8081 route=tomcat2

</Proxy>

以後tomcat須要session複製,由於沒有用到粘滯的會話,附件加上tomcat修改的配置文件

apache還能夠用jk配置,也加上附件,apache也能用http的配置,這個是我以爲最拋開底層的

負載均衡的原理實際上就是一個跳轉加上 另一箇中間件服務器自身的session複製;

或者是用apache的stick session 就不用session複製了(一個機器崩潰了以後,須要從新登陸)



下面是weblogic的負載均衡的配置,簡單的列出關鍵部分:


# weblogic plug-in for apache

LoadModule weblogic_module modules/mod_wl_22.so #這個須要把weblogic的目錄下的mod_wl_22.so放入apache的目錄

<IfModule mod_weblogic.c>

   WebLogicCluster 10.46.137.53:8001,10.46.137.53:8002,10.46.137.53:8003,10.46.137.53:8004,10.46.137.53:8005

   WLIOTimeoutSecs 3600 #響應的超時時間,默認是5分鐘,改大一點,由於有的操做,好比導出啥的,超過5分鐘就跳轉到另一個後端服務器了

   MatchExpression /WEB-INF

   MatchExpression /*WEB-INF

   MatchExpression /*.do

   MatchExpression /servlet/*

   MatchExpression /*.jsp

   MatchExpression /*.*

</IfModule>

<LocationMatch "/">

   SetHandler weblogic-handler

</LocationMatch>




Timeout 1000000

KeepAlive on

KeepAliveTimeOut 1500000



另外,apache有個maxclient的屬性,超過了的進程就須要排隊了,因此很重要,我隨意找了個帖子http://blog.csdn.net/leshjmail/article/details/7772968

關於apache的MPM模式,http://www.itokit.com/2012/0703/74568.html

啥調優的一些公式: http://www.360doc.com/content/12/1018/09/834950_242158613.shtml

合理利用 http://www.enkj.com/help/newscontent/66321

相關文章
相關標籤/搜索