WEB服務器多框架解決方案

學識都 人氣:2.36W
WEB服務器多框架解決方案 【摘要】在INTRANET上設計基於WEB的MIS時,大批量數據錄入變成了操作上的瓶頸,並給WEB SERVER與DATABASE造極大的負擔。

爲解決這個問題,我們設計了多框架結構,將應用的功能進行細分,然後交給各框架分別完成,這種分工協作方式可以使操作界面上的數據實現受控的部分刷新,有效地減小了網絡的數據傳輸量,縮短了各部分的處理時間,同時了也大大減輕了WEB SERVER與DATABASE的系統負擔。

WEB服務器多框架解決方案

多框架解決方案採用ASP(ActiveX Server Pages)及ADO(ActiveX Data Objects)完成與數據庫的交互工作。採用DOM技術解決和框架之間的協作問題。

關鍵詞:多框架

*注:本文中討論的方案中WEB服務器爲IIS4.0、客戶端瀏覽器爲IE4.0以上版本。

一、問題的提出

最初,我們採用ASP及ADO技術在INTRANET上設計基於WEB的MIS(下文簡稱MIS)時,沿用了以往設計WEB站點時的設計習慣。但隨着設計的深入,我們發現,現有的系統結構無法承擔大批量的數據錄入工作,因此,必須重新構造系統的總體設計結構。

MIS與普通的WEB站點之間最大的區別在於處理信息的方式。普通WEB站點的主要功能是發佈信息,採集信息只是它極小的一部分功能,而且這些信息採集功能也都是比較簡單的。但對於MIS系統來說,信息的採集及維護工作佔有比較高的比例,在這些信息採集功能中還存在一些較爲複雜及大批量的數據錄入功能,這些功能成爲了系統中的設計難點。

二、問題的分析

當一個系統涉及到複雜及大批量的數據錄入功能時,同時也就涉及到了響應速度及界面的問題。在以往的C/S方式中,客戶端的錄入速度由錄入員來控制,一般情況下,當錄入員熟悉了操作方式之後,錄入速度是不受系統限制的。但在WEB方式下,頁面採用完全刷新方式,每次的交互操作至少要造成一個頁面的刷新。這種刷新的工作不僅更新了數據,也將界面上的一些固定內容重新加載了一遍。對於普通用戶來說,這種短時間的刷新並不會造成影響;但對於長時間進行操作的錄入員來說,錄入一條數據就要等待一段時間(這一段時間可能是2-3秒,也可能是十幾秒甚至幾分鐘),是絕對不能接受的。即使,網絡有足夠的帶寬,頁面的重載也會造成一種閃動的效果,這種一閃一閃的刷新造成錄入員必須重新識別頁面上的各種元素,不僅也會拖慢了他們的錄入速度,還造成眼睛的`快速疲勞。

三、解決方案

如果能夠“不”刷新頁面而“快速更新”頁面中的數據,問題應該能夠解決了。而且頁面由於沒有刷新,一些必須由服務器保存的狀態信息也能夠在客戶端保存下來了,從而減輕服務器的負擔。那麼如何達到這個目標呢?下面將詳細討論。

1.設計思路

首先,我們確立採用多框架建立頁面。框架(Frames)其實不是什麼新東西,許多站點上都用它來完成顯示固定標題及菜單的功能。採用框架能夠避免一些頁面的重複訪問。但是如果結合使用DOM(Document objects model),框架可以完成許多細緻的工作。

按照DOM的定義,框架可以被當作一個對象。假設我們建立了一個框架,並給它取名爲A,則對於建立框架的頁面來說,A是Frames集合中的一個成員,而對於A中的頁面來說,A相當於window對象。因些,雖然框架之間不存在從屬關係,但可以通過它們的父頁面(對象)建立各框架之間的關係。

如右圖所示:框架之間能夠進行相互控制與數據傳送。

1).在框架A中用的是最常用的框架控制方式,利用<A TARGET=“B” HREF=”URL”> 控制B框架中的頁面重載。

2).在框架B中,通過按鈕的點擊事件對框架C進行控制,這裏的控制是通過DOM來實現的。(假設B中按鈕Name值爲“B1”)

控制C中的URL,在按鈕的ONCLICK事件中加入以下代碼:(VBScript)