1、概述 EOS本身不提供負載均衡、流量控制、過負載控制的處理,主要依賴于J2EE服務器和網絡硬件設備來完成。本文根據普元公司的經驗,主要論述對WebLogic Server負載均衡的考慮。 2、負載均衡 a)負載均衡方式 通過配置WebLogic Server集群(Cluster)可以實現負載均衡、失敗轉移功能。WebLogic Server可以對 Web應用、EJB/RMI、JDBC連接、JMS進行集群處理,建議在 Web應用層實現集群,JMS、EJB不進行集群處理,這樣部署形式比較簡單,易于管理,性能也比較高。JDBC連接的集群需要根據數據服務的要求,一般來說需要實現。 集群拓撲圖:
Web層集群需要一臺 Http Serverl 做代理,將負載分配到集群中所有的實例,實現負載均衡??梢允褂脤iT的硬件,可以利用WebLogic Server完成,也可以使用Apache + WebLogic proxy,建議采用Apache + WebLogic proxy的方式,這樣對硬件的要求比較小,情能相對會好一些。
為提高性能,也可以將一些靜態的內容部署到 Apache Server,主要是html和圖片等
WebLogic集群需要一臺Server作為 Managel Server,建議這臺Server不處理請求,專門做管理。
WebLogic 集群中Server之間通過l Scoket通訊,建議集群的所有Server位于同一網段中。
b)失敗轉移與Session復制
WebLogic Server通過 Session 復制在失敗轉移的時候保存用戶數據,默認支持3種復制方式,In Memory、Database、File,建議采用 In Memory的方式。
c)負載均衡算法
WebLogic Server的負載均衡算法目前主要有:
Round-robin、Weight-base、Random、Parameter-based routing
Round-robin是默認算法,可以根據需要調整
3、EOS配置
基于EOS 開發的產品需要以同樣的方式部署到 WebLogic 集群的每個實例上,建議每個實例的環境配置,文件路徑相同,以便于管理。
對開發資源進行熱更新和部署的時候,需要通過EOS Console對每臺實例進行部署。
EOS為提高性能,會對一些數據進行緩存。在Cluster環境下,需要在緩存更新的時候,通知其他Seever。因此需要在 eosconfig.xml 中添加配置,例如:
多臺Server IP地址以 分號 分割,EOS Server根據這里的配置進行通知。
原文轉自:http://www.anti-gravitydesign.com