三種Tomcat集群方式的優(yōu)缺點分析
Tomcat集群方式有三種,分別是:
1.使用DNS輪詢.
2.使用Apache R-proxy方式。
3.使用Apache mod_jk方式.
接下來對三種Tomcat集群方式的優(yōu)缺點分析一二。
DNS輪詢的缺點是,當集群中某臺服務(wù)器停止之后,用戶由于dns緩存的緣故,便無法訪問服務(wù),必須等到dns解析更新,或者這臺服務(wù)器重新啟動。
還有就是必須把集群中的所有服務(wù)端口暴露給外界,沒有用apache做前置代理的方式安全,并且占用大量公網(wǎng)IP地址,而且tomcat還要負責處理靜態(tài)網(wǎng)頁資源,影響效率。
優(yōu)點是集群配置最簡單,dns設(shè)置也非常簡單。
R-proxy的缺點是,當其中一臺tomcat停止運行的時候,apache仍然會轉(zhuǎn)發(fā)請求過去,導致502網(wǎng)關(guān)錯誤。但是只要服務(wù)器再啟動就不存在這個問題。
mod_jk方式的優(yōu)點是,Apache 會自動檢測到停止掉的tomcat,然后不再發(fā)請求過去。
缺點就是,當停止掉的tomcat服務(wù)器再次啟動的時候,Apache檢測不到,仍然不會轉(zhuǎn)發(fā)請求過去。
R-proxy和mod_jk的共同優(yōu)點是.可以只將Apache置于公網(wǎng),節(jié)省公網(wǎng)IP地址資源。
可以通過設(shè)置來實現(xiàn)Apache專門負責處理靜態(tài)網(wǎng)頁,讓Tomcat專門負責處理jsp和servlet等動態(tài)請求。
共同缺點是:如果前置Apache代理服務(wù)器停止運行,所有集群服務(wù)將無法對外提供。
R-proxy和mod_jk對靜態(tài)頁面請求的處理,都可以通設(shè)置來選取一個盡可能優(yōu)化的效果。
這三種Tomcat集群方式對實現(xiàn)最佳負載均衡都有一定不足,mod_jk相對好些,可以通過設(shè)置lbfactor參數(shù)來分配請求任務(wù),但又因為mod_jk2方式不被推薦,mod_jk2已經(jīng)不再被更新了。
本文來自kit_lo的博客:《tomcat 三種集群方式》
【編輯推薦】