本文主要是記錄windows下apache+JK+tomcat負載平衡的設置進程,利便本身今后備用,也但愿能給剛打仗的xd提供參考。嘗試情況的系統已經安裝好了apache2.2.17,安裝路徑D:Program FilesApache2.2
本文的或許章節分類:
1.下載mod_jk
2.修改apache相關設置
3.tomcat設置修改
4.測試負載平衡
5.設置apache處理懲罰靜態文件
【一】下載mod_jk
打開tomcat 的主頁:http://tomcat.apache.org,左側download頁面:
選擇圖中赤色標注的鏈接打開如下:
選擇圖中赤色標注的鏈接打開如下:
選擇圖中赤色標注的鏈接打開如下:
選擇圖中赤色標注的鏈接打開如下:
【二】修改apache相關設置
httpd.conf 路徑:D:Program FilesApache2.2confhttpd.conf
在httpd.conf文件的末端添加如下內容:
# module mod_jk config file
Include conf/extra/mod_jk.conf
mod_jk.conf
Apache2.2confextra目次下新建文件:mod_jk.conf,內容如下:
#load module mod_jk-1.2.31-httpd-2.2.3.so is for Apache 2.2.x.
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so
#設置 mod_jk conf
#加載集群中的workers
JkWorkersFile conf/workers.properties
#加載workers的請求處理懲罰分派文件
JkMountFile conf/uriworkermap.properties
#指定jk的日志輸出文件
JkLogFile logs/mod_jk.log
#指定日志級別
JkLogLevel info
workers.properties
Apache2.2conf目次下新建文件:workers.properties,內容如下:
# worker列表
worker.list=LB_worker,jkstatus
#第一個worker的設置,美國網站空間 香港網頁寄存,名為worker_1
#tomcat的主機地點,如不為本機,請填寫ip地點
worker.worker_1.host=localhost
#ajp13 端標語,對應tomcat設置文件server.xml中Connector port="8009",默認8009
worker.worker_1.port=8009
worker.worker_1.type=ajp13
#負載的權重值,越高暗示負載越大
worker.worker_1.lbfactor=1
#第二個worker的設置,名為worker_2
worker.worker_2.host=localhost
#ajp13 端標語,對應tomcat設置文件server.xml中Connector port="9009"
worker.worker_2.port=9009
worker.worker_2.type=ajp13
worker.worker_2.lbfactor=1
#LB_worker,用于負載平衡分發的節制器
worker.LB_worker.type=lb
#重試次數
worker.LB_worker.retries=3
#指定負載的worker列表,用逗號脫離
worker.LB_worker.balance_workers=worker_1,worker_2
#設置session會話是否為粘性
#這樣負載平衡器lb就會只管保持一個session,也就是利用戶在一次會話中跟同一個Tomcat舉辦交互
worker.LB_worker.sticky_session=true
#假如sticky_session設為true時,此處一般設為false
worker.LB_worker.sticky_session_force=false
#配置運行狀態的節制器
worker.jkstatus.type=status
workers.properties相關參數說明:
http://tomcat.apache.org/connectors-doc/reference/workers.html
worker.loadbalancer.sticky_session=true
該參數指定集群是否實現會話粘性,假如設為 true ,則表白為會話粘性,同一個session的請求會分發到同一臺tomcat;當多個tomcat有一個session打點器時該值設為 false。
worker.loadbalancer.sticky_session_force=false
該參數僅在上面sticky_session=true時才起浸染。假如上面的 sticky_session 設為 true 時,發起此處也設為 false
uriworkermap.properties
Apache2.2conf目次下新建文件:uriworkermap.properties,內容如下:
#所有請求都由LB_worker這個worker處理懲罰
/*=LB_worker
#所有包括jkstatus請求的都由名稱叫jkstatus的這個worker處理懲罰
/jkstatus=jkstatus
uriworkermap.properties相關參數說明:
http://tomcat.apache.org/connectors-doc/reference/uriworkermap.html
【三】tomcat設置修改
有關JDK、tomcat的根基安裝設置本文不再作具體先容,重點先容與當前負載平衡設置相關的內容,以tomcat7.0.2為例來設置。
[1#] 修改tomcat-7.0.2_1confserver.xml
設置文件片斷如下:
<!-- 兩個tomat的端口區分隔 -->
<Connector URIEncoding="UTF-8" port="8082" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<!-- port="8009" 對應于workers.properties中worker.worker_1.port=8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- jvmRoute 的值對應于workers.properties中worker_1 -->
<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker_1">