軟硬件聯(lián)合配置實(shí)現(xiàn)負(fù)載均衡
在一些操作系統(tǒng)或者硬件上面自身不會(huì)有負(fù)載均衡功能,我們通過軟件的結(jié)合使用,讓它具有這個(gè)功能。那么下面我們將討論一下EOS通過WebLogioc實(shí)現(xiàn)負(fù)載均衡功能的步驟,讓我們一起來看看文章的具體內(nèi)容吧。
1、概述
EOS本身不提供負(fù)載均衡、流量控制、過負(fù)載控制的處理,主要依賴于J2EE服務(wù)器和網(wǎng)絡(luò)硬件設(shè)備來完成。本文根據(jù)普元公司的經(jīng)驗(yàn),主要論述對WebLogic Server負(fù)載均衡的考慮。
2、負(fù)載均衡
a)負(fù)載均衡方式
通過配置WebLogic Server集群(Cluster)可以實(shí)現(xiàn)負(fù)載均衡、失敗轉(zhuǎn)移功能。WebLogic Server可以對Web應(yīng)用、EJB/RMI、JDBC連接、JMS進(jìn)行集群處理,建議在Web應(yīng)用層實(shí)現(xiàn)集群,JMS、EJB不進(jìn)行集群處理,這樣部署形式比較簡單,易于管理,性能也比較高。JDBC連接的集群需要根據(jù)數(shù)據(jù)服務(wù)的要求,一般來說需要實(shí)現(xiàn)。Web層集群需要一臺(tái)Http Serverl做代理,將負(fù)載分配到集群中所有的實(shí)例,實(shí)現(xiàn)負(fù)載均衡??梢允褂脤iT的硬件,可以利用WebLogic Server完成,也可以使用Apache+WebLogic proxy,建議采用Apache+WebLogic proxy的方式,這樣對硬件的要求比較小,情能相對會(huì)好一些。
為提高性能,也可以將一些靜態(tài)的內(nèi)容部署到Apache Server,主要是html和圖片等
WebLogic集群需要一臺(tái)Server作為Managel Server,建議這臺(tái)Server不處理請求,專門做管理。
WebLogic集群中Server之間通過lScoket通訊,建議集群的所有Server位于同一網(wǎng)段中。
b)失敗轉(zhuǎn)移與Session復(fù)制
WebLogic Server通過 Session復(fù)制在失敗轉(zhuǎn)移的時(shí)候保存用戶數(shù)據(jù),默認(rèn)支持3種復(fù)制方式,In Memory、Database、File,建議采用In Memory的方式。
c)負(fù)載均衡算法
WebLogic Server的負(fù)載均衡算法目前主要有:
Round-robin、Weight-base、Random、Parameter-based routing
Round-robin是默認(rèn)算法,可以根據(jù)需要調(diào)整
3、EOS配置
為了讓EOS實(shí)現(xiàn)負(fù)載均衡功能,基于EOS開發(fā)的產(chǎn)品需要以同樣的方式部署到WebLogic集群的每個(gè)實(shí)例上,建議每個(gè)實(shí)例的環(huán)境配置,文件路徑相同,以便于管理。
對開發(fā)資源進(jìn)行熱更新和部署的時(shí)候,需要通過EOS Console對每臺(tái)實(shí)例進(jìn)行部署。
EOS為提高性能,會(huì)對一些數(shù)據(jù)進(jìn)行緩存。在Cluster環(huán)境下,需要在緩存更新的時(shí)候,通知其他Seever。因此需要在eosconfig.xml中添加配置,例如:
- <module name="cluster">
- <group name="config">
- <configValue key="nodeList">192.168.1.2;192.168.2.3</configValue>
- </group>
- </module></MODULE>
多臺(tái)Server IP地址以分號(hào)分割,EOS Server根據(jù)這里的配置進(jìn)行通知。