需要準備的環境:
apache2.2 apache_mod_jk模組(自帶) tomcat6.0
apache端配置:
conf/httpd.conf中最後一行引用jk的配置檔案
include mod_jk.conf
mod_jk.conf中的內容,載入了mod_jk的庫檔案,指定了worker的配置檔案,設定了jk的日誌配置
其中jkmount應該很重要,指定路徑的請求用指定的worker配置來處理
loadmodule jk_module modules/mod_jk.so
jkworkersfile /home/
jiong/apache/conf/workers.properties
jklogfile /home
/jiong/apache/logs/mod_jk.log
jkloglevel error
jklogstampformat "[%a %b %d] "
jkrequestlogformat "%w %v %t"
jkshmfile /home/
jiong/apache/logs/mod_jk.shm
jkmount / controller
jkmount /* controller
workers.properties檔案,用於指定負載均衡的機器
worker.list=controller
worker.worker1.type=ajp13
worker.worker1.host=127.0.0.1
worker.worker1.port=8202
#負載均衡引數,這裡是1:1,所以是平均分配請求
worker.worker1.lbfactor=1
#限制分配給每個worker的連線池中的連線個數
worker.worker1.cachesize=10
#ajp13在被負載到乙個請求後,會在tomcat端建立乙個ajp13的執行緒,這個超時時間應該就是限制什麼時候kill掉這些執行緒
#如果沒有這個引數,在tomcat端會存在很多無法釋放的無用執行緒
worker.worker1.cache_timeout=600
#會在apache和下層server通訊中使用keepalive模式,防止apache端的防火牆乾掉inactive的連線
worker.worker1.socket_keepalive=1
worker.worker2.type=ajp13
worker.worker2.host=10.1.2.3
worker.worker2.port=8202
worker.worker2.lbfactor=1
worker.worker2.cachesize=10
worker.worker2.cache_timeout=600
worker.worker2.socket_keepalive=1
#作為負載用的controller,blance_workers為worker1和worker2
worker.controller.type=lb
worker.controller.balance_workers=worker1,worker2
#對於同乙個session_id,如果為指定為1或true,會粘滯到相同的worker上
worker.controller.sticky_session=1
tomcat端配置:
在server.xml中,配置service下的engine節點即可,配置其屬性jvmroute="worker1",也就是對應的worker即可
另乙個tomcat配成worker2即可
實驗負載均衡:
啟動apache:./bin/apachectl start
啟動tomcat
瀏覽器訪問apache,通過cookie看session_id了解負載情況
引用資料:
apache tomcat負載均衡
最近tomcat總是記憶體溢位,於是就多看了一些tomcat的文章,今天恰好也看到了一篇關於tomcat負載均衡的東西 就好奇的配置了一下,感覺很爽,過程中出現了一些問題,做以下簡單的總結 說一下自己簡單的理解,負載均衡就是分擔以下一台伺服器上面的應用的負載,減輕伺服器的壓力,我看到的最簡單的效果就...
apache tomcat 負載均衡
其實無論是分布式,資料快取,還是負載均衡,無非就是改善 的效能瓶頸,在 原始碼不做優化的情況下,負載均衡可以說 是最直接的手段了。其實拋開這個名詞,放開了說,就是希望使用者能夠分流,也就是說把所有使用者的訪問壓力分散到多台伺服器上,也可以 分散到多個tomcat裡,如果一台伺服器裝多個tomcat,...
apache tomcat 負載均衡
其實無論是分布式,資料快取,還是負載均衡,無非就是改善 的效能瓶頸,在 原始碼不做優化的情況下,負載均衡可以說 是最直接的手段了。其實拋開這個名詞,放開了說,就是希望使用者能夠分流,也就是說把所有使用者的訪問壓力分散到多台伺服器上,也可以 分散到多個tomcat裡,如果一台伺服器裝多個tomcat,...