關于群集的網絡教學資源庫設計
[論文關鍵字]群集;五層體系結構;教學資源庫
[論文摘要]分析了當前教學資源庫存在的問題,設計了基于五層體系結構的網絡教學資源庫,并對教學資源庫使用WebLogicServer群集技術實現負載均衡和故障轉移的功能。
相關論文查閱:大學生論文、工商財務論文、經濟論文、教育論文 熱門畢業論文
1.教學資源庫存在的問題
教學資源庫指廣義的資源庫概念,它不僅包括教學資源存儲功能,而且包括教學資源管理、教學資源訪問、教學資源評價等功能,即廣義上的教學資源共享和管理系統。目前網絡教學資源庫多采用傳統的B/S三層體系結構,包括表示層、業務層和數據層三個部分;其主要事務是在服務器端發生,極少部分事務在前端實現;數據多采用集中存儲和集中管理的模式。隨著教學資源的增加以及資源需求服務的不斷增長,教學資源庫逐漸暴露出以下幾方面的不足:
(1)負載不均。目前多數教學資源管理采用的模式是集中存儲與管理。在教學資源庫中多媒體素材以視頻素材居多,數據流量大;校園網中數據訪問時間相對集中,容易造成服務器負載不均,出現數據訪問瓶頸。
(2)數據與業務耦合度高。傳統的三層體系結構中,業務層承擔了業務邏輯和數據庫訪問兩大任務,造成業務邏輯與特定的數據庫訪問之間的高耦合,導致系統維護吃力,不利于系統業務的擴展,無法滿足新的業務需求。
(3)可靠性不高。教學資源庫中一旦出現服務器故障,易出現服務中斷、服務可靠性不高等問題。
2.群集的概念
群集(Cluster)是一個邏輯概念,用于對用途相同的服務器實例進行分組。當其為客戶工作站提供高可靠性的服務時,對客戶來說是透明的;即對于外界用戶來說,使用某個提供的服務時,服務器群集似乎是一個服務器。客戶并不知道是哪臺服務器為他提供服務群集中的應用服務器實例可以運行在同一臺機器,也可以運行在不同的機器上。
群集通過在服務器的多個實例之間分配工作負載,為應用程序提供可伸縮性和可靠性。
(1)可伸縮性。群集可以在不影響應用程序運行和客戶端的情況下,根據需要動態添加服務器實例到集群中,增加應用程序容量滿足客戶訪問需求。
(2)可靠性。應用程序可以部署到集群中的多個服務器實例,由于服務器實例的選擇對客戶端透明,因此,即使某個服務器實例失敗,不影響應用程序的繼續執。
3.網絡教學資源庫群集部署方案
基于傳統B/S三層架構的網絡教學資源庫存在負載不均、可擴展性不足、可靠性不高等問題。為解決這些問題,若是采用增加普通服務器,其處理能力并不能很好地解決問題;若采用高速、高性能服務器,不但價格高昂,而且不一定能滿足Web服務的高強度并發處理要求。群集技術為解決這些問題提供了一種廉價有效的方案。
3.1體系結構設計
傳統的B/S三層架構,如圖1所示,其數據與業務耦合度高?赏ㄟ^對其進一步適當分層解決各層之間的高耦合問題。分層架構具有松耦合、伸縮性、重用性和擴展性等優點,但分層同時也帶來了性能影響,并增加了系統的復雜性。因此,網絡教學資源庫設計采用了多層體系結構,在傳統三層結構的基礎上增加兩層,共分為五層,即表示層、Web層、業務邏輯層、數據持久層和數據層。
從圖1和圖2的比較可以看出,五層體系結構中增加的web層將應用的邏輯處理和表現相分離,使得系統具有邏輯流程清晰、功能代碼復用性強、分布式部署的特點;而數據持久層位于數據庫之上,隱藏數據讀取和操縱中的所有數據訪問代碼細節,將客戶應用程序與底層存儲機制隔離開,完全抽象出開發應用程序時使用的數據物理細節。
3.2教學資源庫主要功能模塊
網絡教學資源庫廣義上來講是個資源共享和管理的系統,一般包括5個模塊:資源管理、資源訪問、資源需求、用戶管理和服務管理,如圖3所示。
(1)資源管理功能主要進行資源審核和資源維護工作。包括對上傳資源進行審核入庫;管理員對資源進行添加、刪除和修改。
(2)資源訪問功能主要包括用戶對資源的檢索、下載、評價、收藏等功能。
(3)資源需求功能主要包括資源需求請求、資源需求回復、資源交換等功能。
(4)用戶管理功能主要包括用戶信息管理、資源上傳、已上傳資源列表、用戶投訴等功能。
(5)服務管理功能主要包括建議反饋、游客訪問、評價管理等功能。
3.3群集設計
BEAWebLogic是用于開發、集成、部署和管理大型分布式Web應用、網絡應用和數據庫應用的JAVA應用服務器。WebLogic還擁有出色的集群技術,既實現了網頁集群也實現了EJB組件的集群,并且不需要任何專門的硬件或者操作系統支持。
在WebLogic中域(Domain)是配置了管理服務器(AdministratorServer)的WebLogicServer實例管理的邏輯單元,在域中可以包含了多個服務器實例以及服務器群集引域和服務群集問的邏輯關系如圖4所示。一個域中必須配置一臺管理服務器,并且只能配置一臺;而服務實例1、服務實例2、服務實例3和服務實例4可以運行于同一臺機器也可以是運行于不同的機器;一個域中可以有多臺物理機器。
在教學資源庫中使用WebLogic群集技術,通過一組相互協作的服務實例,在多臺機器間復制和應用表示層和邏輯層的能力,從而實現關鍵業務系統的負載分布,消除個別故障點。
(1)故障轉移的實現
簡單的說,故障轉移是當應用程序組件正在處理某個特定作業時,某些處理任務部分由于任何原因而變得不可用已失敗對象的副本將結束此作業。由于群集中的所有服務實例執行同一服務請求,同一服務在多個服務實例上同時存放,并且服務實例問可以復制狀態信息。故當某個服務實例發生故障,另-N務實例可以接管,服務自動切換到正在運行的服務實例上。群集故障轉移的處理對用戶來說是完全透明的,用戶并不知道發生了故障轉移。
(2)負載均衡的實現。群集由代理來實現負載均衡。通過代理將請求轉發到不同的管理服務器上來實現。代理將負載按比例分配到群集中所有的服務實例,使每個服務實例能夠充分發揮其能力。群集對加入其中的服務實例的性能沒有限制。并且可以在同一臺機器上啟動多個服務實例,充分利用機器的資源。因此,當教學資源庫客戶端的請求突然大幅增加時,可以通過動態增加服務實例來提高性能。
4.結束語
基于群集的網絡教學資源庫采用了多層體系結構設計,解決了傳統三層休系結構中存在的數據與業務耦合問題,方便系統進行動態服務擴展;使用群集服務有效地實現了系統負載均衡和故障轉移,并為今后教學資源庫服務的變化做了更有效的準備。
相關論文查閱:大學生論文、工商財務論文、經濟論文、教育論文 熱門畢業論文
【群集的網絡教學資源庫設計】相關文章:
淺論高校教學資源庫的構建03-10
淺析高職院校《動物生物化學》網絡教學資源庫的建設與使用12-12
網絡教學的設計研究開題報告12-03
高等數學教學資源庫的建設內容11-15
“網絡教學的設計與評價研究”開題報告12-04
網絡教學的設計評價研究開題報告11-27
農村學校教學資源庫建設的思考論文03-13
- 相關推薦