一、Web集群的組成
一個TongWeb Server集群包含有一定數量的TongWeb服務器、TongWebDirector 以及Web代理服務器?;ハ嘀g可以協作實現高負載,高可用性等功能。
Web代理服務器(簡稱WebServer):位于web客戶端(瀏覽器)和TongWebDirector之間,可以是Microsoft IIS、Apache、NetScape/iPlanet。主要用于提供靜態頁面(html,gif,jpeg)服務,對于servlet/jsp的調用,將會轉給TongWeb Director。
TongWeb Director:作為插件附加在Web代理服務器上。通過請求派發策略實現請求派發工作和服務器失效檢測工作。
TongWeb 服務器(AppServer):之間可以通過網絡實現對于http session數據的實時復制,從而保證客戶端的高可靠訪問。一臺TongWeb服務器又稱為一個集群節點。
Web 應用:部署在TongWeb服務器上的,由 serlvet/jsp以及一些靜態資源組成的應用程序,供瀏覽器訪問使用。一個 web 應用,一般打包為一個 WAR 文件。
Web代理服務器和TongWeb服務器啟動的先后次序無關緊要,TongWebDirector將總是選擇目前可用的TongWeb服務器,并周期性地檢測TongWeb服務器是否正常工作。另外,還可以使用配置文件tongweb_director.conf來增加、刪除或修改它所管理的TongWeb服務器。
二、Web集群的方式
1、負載均衡
負載均衡是由多臺服務器以對稱的方式組成一個服務器集合,每臺服務器都具有等價的地位,都可以單獨對外提供服務而無須其他服務器的輔助。TongWeb集群通過代理服務器上的TongWebDirector,將客戶端發送來的請求均勻分配到多臺內部Web服務器之一上,從而達到負載均衡的目的。而接收到請求的服務器獨立地回應客戶的請求。
2、帶會話遷移功能的應用級集群
帶會話遷移功能的應用級集群就是在建立的負載均衡集群的基礎上增加了Session保存與遷移功能。當Web應用中使用了Session時,集群中的每個TongWeb服務器管理自己所產生的Session,當Web應用從一臺服務器遷移到另一臺服務器時,Session也會自動進行遷移,這樣使得對Session的管理被均勻地分布到所有的服務器上,任何一臺服務器失效并不會使Session數據丟失。從而保證了Session應用的安全性和可靠性。
三、在UNIX平臺上用APACHE配置集群
1、TongWebDirector for Apache 1.3的安裝配置
1.1 安裝Apache Web Server
apache安裝在10.46.6.181的/opt/apache目錄下,用boss用戶進入起停。
安裝過程略(直接tar一個可用的就可以了)
1.2 修改配置
1)更改httpd.conf文件
進入/usr/local/apache/conf,使用熟悉的編輯工具如vi打開httpd.conf文件,修改ServerName和Port為自己需要的配置。
這里為了不影響大家原先的使用,所以將端口設置為9004
1.3 裝載模塊狀態檢查
為了后面能成功安裝Apache上的TongWebDirector,必須確保mod_so能正常裝載,因此需要檢查模塊是否裝載,進入/usr/local/apache/bin,運行./httpd -l,查看是否有mod_so.c項,如果有就說明該正常裝載了。
2、安裝TongWebDirector二進制代碼模塊
2.1 安裝所需二進制代碼文件以及輔助文件列表
Apache擴展模塊文件: mod_tongweb_director.so
該文件是一個Apache擴展模塊。缺省應該放在Apache的libexec目錄,并使用httpd.conf中的AddModule和LoadModule指令裝載。
TongWebDirector 配置文件: tongweb_director.conf
該文件包含TongWebDirector配置。mod_tongweb_director.so模塊缺省情況下在httpd.conf同一個目錄中尋找該文件。
TongWebDirector 守護程序文件: edir_daemon
該程序運行在后臺監視模塊子實例使用的共享內存區域來協調負載平衡。在Apache中必須是因為它使用多個單獨進程來允許并發請求的多線程性。該守護進程在Apache啟動時自動啟動,并在Apache停止時自動清除共享內存退出。
TongWebDirector 狀態工具: edir_status
該實用程序直接讀取TongWebDirector模塊使用的共享內存區域,報告當前配置的每個應用和TongWeb服務器狀態。
Director二進制模塊是平臺相關的,存放在