Apache+Tomcat+jk_mod整合實戰
TOMCAT+APACHE+JK實現TOMCAT叢集負載均衡
1.APACHE下https.conf最下面加上include "APACHE路徑/conf/mod_jk.conf"在conf資料夾下增加了以個相應的mod_jk.conf檔案
2.mod_jk.conf檔案的配置如下:
#載入mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.3.so
#指定 workers.properties檔案路徑
JkWorkersFile conf/workers.properties
#指定那些請求交給tomcat處理,"controller"
JkMount /*.jsp controller
3.把mod_jk-1.2.28-httpd-2.2.3.so檔案COPY到APACHE/modules資料夾下
4.在http.conf同目錄下新建 workers.properties檔案,內容如下
worker.list = controller,tomcat1,tomcat2
#server 列表
#========tomcat1========
worker.tomcat1.port=8009
#ajp13 埠號,在tomcat下server.xml配置,預設8009
worker.tomcat1.host=localhost
#tomcat的主機地址,如不為本機,請填寫ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1
#server的加權比重,值越高,分得的請求越多
#========tomcat2========
worker.tomcat2.port=9009
#ajp13 埠號,在tomcat下server.xml配置,預設8009
worker.tomcat2.host=localhost
#tomcat的主機地址,如不為本機,請填寫ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1
#server的加權比重,值越高,分得的請求越多
#========controller,負載均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2
#指定分擔請求的tomcat
worker.controller.sticky_session=1
5. 修改兩個tomcat配置檔案server.xml。
(1)<Server port="8005" shutdown="SHUTDOWN"> 埠號一個為8005一個為9005
(2)<Connector port="8081" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
埠號一個為8080一個為8081 如果8080埠有其他用可以改為8082
(3)<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
埠號一個為8009一個為9009.兩個TOMCAT的埠號應與workers.properties檔案內的worker.tomcat2.port一致
(4)去掉<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1"> 標籤的註釋。標紅的地方應與workers.properties檔案內的TOMCAT名一致。
(5)去掉<Cluster>…………</Cluster>標籤的註釋,將標籤中如下標紅的地方埠號改成4001與4002。
<Receiver
className="org.apache.catalina.cluster.tcp.ReplicationListener"
tcpListenAddress="auto"
tcpListenPort="4001"
tcpSelectorTimeout="100"
tcpThreadCount="6"/>
<Sender
(6)如果需要實現SESSION同步的話還需要做以下配置:
在相應的專案的WEB-INFO資料夾下的WEB.XLM檔案中的<web-app></web-app>中加入<distributable/>標籤,兩個專案都需要加!
<web-app
apache+tomcat併發測試
apache/bin/ab-c 1000 -n 10000 http://cvs.javaeye.com:8080/test.jsp
-c是併發數-n是傳送請求數