這份文件只是乙個初步的配置負載均衡的文件,沒有涉及過多的效能優化的東西。
所以也就不多言了,直接切入主題。
安裝jdk 並配置環境變數。這裡要求至少 1.5 以上版本。
安裝apache2.2 。我的安裝目錄為:
d:\apache
2.2
安裝tomcat6 。為了埠不起衝突,建議直接解壓。我這裡只使用了兩台 tomcat 作為集群伺服器。其路徑分別為 d:\apache-tomcat-6.0.20_v1 、 d:\apache-tomcat-6.0.20_v2
這裡說明一下,我在網上找到的一些資料都在介紹mod_jk 的方式配置負載均衡。但是從 apache2.x 版本之後其自身已經整合了 mod_jk 可以直接使用 mod_proxy 的方式進行負載均衡的配置,所以下面介紹的也即是這種方式。
在d:\apache2.2\conf 目錄下找到 httpd.conf 檔案,並進行修改。修改步驟:
在配置檔案裡找到上述模組,將前邊的「# 」去掉 .
在該配置檔案的最後加上:
proxyrequests off
proxypass / balancer://cluster/
balancermember ajp://
localhost:8009
loadfactor=1 route=
jvm1
balancermember ajp://
localhost:9009
loadfactor=1 route=
jvm2
注意紅色部分,因為這裡我只使用了一台物理機器作為集群的配置,所以就直接使用了localhost 指向本地的集群伺服器,你也可以使用 127.0.0.1 。如果這裡你使用多台機器一起配合的話,只需要將 localhost 修改為其他機器的 ip 位址就行。
另外需要注意的就是上面配置的埠,為什麼要這麼配置?將在後邊結合tomcat 一起做乙個詳細的說明。
在d:\apache-tomcat-*\conf 找到 server.xml ,然後著手修改。
因為我是在同一臺機器上配置兩台tomcat ,所以為了使 tomcat 關閉不出現埠被占用的情況,需要修改關閉埠。
8005
" shutdown="shutdown">
修改為:
***x
" shutdown="shutdown">
這裡又兩個地方需要修改, 第乙個就是 tomcat 監聽的 http 埠,另乙個就是 tomcat 監聽的 ajp 埠:
注意,藍色部分是tomcat 的 http 埠,因為我在同一臺機器上配置了兩個 tomcat ,為了使它們的 http 埠不衝突,我將第乙個 tomcat 使用預設的埠即 8080 ,第二個 tomcat 的 http 埠我修改為了 8081 。同樣的道理,如果你還有其他的 tomcat ,記得將它們的 http 埠修改為互不衝突的埠號即可。
另乙個需要修改的埠,紅色部分的埠,
這裡是apache 和 tomcat 鏈結的關鍵,前台 apache 就是通過 ajp 協議與 tomcat 進行通訊的,以完成負載均衡的作用。
現在回過頭去看看
apache的 httpd.conf 配置,
balancermember ajp://
localhost:8009
loadfactor=1 route=
jvm1
balancermember ajp://
localhost:9009
loadfactor=1 route=
jvm2
那麼,另乙個tomcat 的 ajp 埠你知道要配置成什麼了嗎?對了,就是 9009 。
,這個是原來的配置,現在將這個配置修改為: jvm1
">,然後另乙個 tomcat 修改為 jvm2
">。
現在再回過頭去看看apache 的配置:
balancermember ajp://
localhost:8009
loadfactor=1 route=
jvm1
balancermember ajp://
localhost:9009
loadfactor=1 route=
jvm2
這裡再說明一點,loadfactor 相當於一種加權策略, loadfactor 的值越大,對應的 tomcat 伺服器分到的請求就越多。像上面的這種設定就說明兩台 tomcat 將平均負載。
tomcat裡的 這個配置預設是被注釋掉的,如果想要開啟取消注釋就 ok ,這也是 tomcat 預設的會話同步和複製配置。一般的情況下,使用預設配置就可以。
關於session 的複製我還沒來得及驗證過,有需要的同學可以自己去網上找一下相關資料。
apache tomcat負載均衡
最近tomcat總是記憶體溢位,於是就多看了一些tomcat的文章,今天恰好也看到了一篇關於tomcat負載均衡的東西 就好奇的配置了一下,感覺很爽,過程中出現了一些問題,做以下簡單的總結 說一下自己簡單的理解,負載均衡就是分擔以下一台伺服器上面的應用的負載,減輕伺服器的壓力,我看到的最簡單的效果就...
apache tomcat 負載均衡
其實無論是分布式,資料快取,還是負載均衡,無非就是改善 的效能瓶頸,在 原始碼不做優化的情況下,負載均衡可以說 是最直接的手段了。其實拋開這個名詞,放開了說,就是希望使用者能夠分流,也就是說把所有使用者的訪問壓力分散到多台伺服器上,也可以 分散到多個tomcat裡,如果一台伺服器裝多個tomcat,...
apache tomcat 負載均衡
需要準備的環境 apache2.2 apache mod jk模組 自帶 tomcat6.0 apache端配置 conf httpd.conf中最後一行引用jk的配置檔案 include mod jk.conf mod jk.conf中的內容,載入了mod jk的庫檔案,指定了worker的配置檔...