![WEB服務(wù)器多框架解決方案_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/28/37bd4f2a-d326-4263-ba91-253479cfba8b/37bd4f2a-d326-4263-ba91-253479cfba8b1.gif)
![WEB服務(wù)器多框架解決方案_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/28/37bd4f2a-d326-4263-ba91-253479cfba8b/37bd4f2a-d326-4263-ba91-253479cfba8b2.gif)
![WEB服務(wù)器多框架解決方案_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/28/37bd4f2a-d326-4263-ba91-253479cfba8b/37bd4f2a-d326-4263-ba91-253479cfba8b3.gif)
![WEB服務(wù)器多框架解決方案_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/28/37bd4f2a-d326-4263-ba91-253479cfba8b/37bd4f2a-d326-4263-ba91-253479cfba8b4.gif)
![WEB服務(wù)器多框架解決方案_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/28/37bd4f2a-d326-4263-ba91-253479cfba8b/37bd4f2a-d326-4263-ba91-253479cfba8b5.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、WEB服務(wù)器多框架解決方案 【摘要】在INTRANET上設(shè)計基于WEB的MIS時,大批量數(shù)據(jù)錄入變成了操作上的瓶頸,并給WEB SERVER與DATABASE造極大的負擔。為解決這個問題,我們設(shè)計了多框架結(jié)構(gòu),將應(yīng)用的功能進行細分,然后交給各框架分別完成,這種分工協(xié)作方式可以使操作界面上的數(shù)據(jù)實現(xiàn)受控的部分刷新,有效地減小了網(wǎng)絡(luò)的數(shù)據(jù)傳輸量,縮短了各部分的處理時間,同時了也大大減輕了WEB SERVER與DATABASE的系統(tǒng)負擔。多框架解決方案采用ASP(ActiveX Server Pages)及ADO(ActiveX Data Objects
2、)完成與數(shù)據(jù)庫的交互工作。采用DOM技術(shù)解決和框架之間的協(xié)作問題。關(guān)鍵詞:多框架*注:中討論的方案中WEB服務(wù)器為IIS4.0、客戶端瀏覽器為IE4.0以上版本。 一、問題的提出最初,我們采用ASP及ADO技術(shù)在INTRANET上設(shè)計基于WEB的MIS(下文簡稱MIS)時,沿用了以往設(shè)計WEB站點時的設(shè)計習慣。但隨著設(shè)計的深入,我們發(fā)現(xiàn),現(xiàn)有的系統(tǒng)結(jié)構(gòu)無法承擔大批量的數(shù)據(jù)錄入工作,因此,必須重新構(gòu)造系統(tǒng)的總體設(shè)計結(jié)構(gòu)。MIS與普通的WEB站點之間最大的區(qū)別在于處理信息的方式。普通WEB站點的主要功能是發(fā)布信息,采集信息只是它極小的一部分功能,而且這些信息采集功能也都是比較簡單的。但對于MIS系
3、統(tǒng)來說,信息的采集及維護工作占有比較高的比例,在這些信息采集功能中還存在一些較為復(fù)雜及大批量的數(shù)據(jù)錄入功能,這些功能成為了系統(tǒng)中的設(shè)計難點。二、問題的分析當一個系統(tǒng)涉及到復(fù)雜及大批量的數(shù)據(jù)錄入功能時,同時也就涉及到了響應(yīng)速度及界面的問題。在以往的C/S方式中,客戶端的錄入速度由錄入員來控制,一般情況下,當錄入員熟悉了操作方式之后,錄入速度是不受系統(tǒng)限制的。但在WEB方式下,頁面采用完全刷新方式,每次的交互操作至少要造成一個頁面的刷新。這種刷新的工作不僅更新了數(shù)據(jù),也將界面上的一些固定內(nèi)容重新加載了一遍。對于普通用戶來說,這種短時間的刷新并不會造成影響;但對于長時間進行操作的錄入員來說,錄入一條
4、數(shù)據(jù)就要等待一段時間(這一段時間可能是2-3秒,也可能是十幾秒甚至幾分鐘),是絕對不能接受的。即使,網(wǎng)絡(luò)有足夠的帶寬,頁面的重載也會造成一種閃動的效果,這種一閃一閃的刷新造成錄入員必須重新識別頁面上的各種元素,不僅也會拖慢了他們的錄入速度,還造成眼睛的快速疲勞。三、解決方案如果能夠“不”刷新頁面而“快速更新”頁面中的數(shù)據(jù),問題應(yīng)該能夠解決了。而且頁面由于沒有刷新,一些必須由服務(wù)器保存的狀態(tài)信息也能夠在客戶端保存下來了,從而減輕服務(wù)器的負擔。那么如何達到這個目標呢?下面將詳細討論。1設(shè)計思路 首先,我們確立采用多框架建立頁面??蚣?Frames)其實不是什么新東西,許多站點上都用它來完成顯示固定
5、標題及菜單的功能。采用框架能夠避免一些頁面的重復(fù)訪問。但是如果結(jié)合使用DOM(Document objects model),框架可以完成許多細致的工作。按照DOM的定義,框架可以被當作一個對象。假設(shè)我們建立了一個框架,并給它取名為A,則對于建立框架的頁面來說,A是Frames集合中的一個成員,而對于A中的頁面來說,A相當于window對象。因些,雖然框架之間不存在從屬關(guān)系,但可以通過它們的父頁面(對象)建立各框架之間的關(guān)系。如右圖所示:框架之間能夠進行相互控制與數(shù)據(jù)傳送。1)在框架A中用的是最常用的框架控制方式,利用A TARGET“B” HREF=”URL” 控制B框架中的頁面重載。2)在
6、框架B中,通過按鈕的點擊事件對框架C進行控制,這里的控制是通過DOM來實現(xiàn)的。(假設(shè)B中按鈕Name值為“B1”)控制C中的URL,在按鈕的ONCLICK事件中加入以下代碼:(VBScript)sub b1_o nclickset Bframe = parent.BEnd sub控制C中的文本框內(nèi)容,在按鈕的ONCLICK事件中加入以下代碼:(VBScript)sub b1_onclickset Bframe = parent.Btxt1是C框架中文本框的Value值 end sub2新的框架結(jié)構(gòu)如上圖,我們定義了一個新的框架結(jié)構(gòu)。在新的框架結(jié)構(gòu)中
7、,除了用來放置一、二級菜單的MENU1、MENU2和用來放置三級菜單及具體應(yīng)用功能的Aapp之外,還增加了三個專門用來處理數(shù)據(jù)的框架(在上圖中用虛線表示)。這三個框架不需要界面,在應(yīng)用執(zhí)行的時候是看不見的。三個數(shù)據(jù)處理框架的與Aapp框架分工合作,完成具體的功能。Aapp 針對具體功能的界面和專用控制腳本Bfun 客戶端公用函數(shù)和全局變量Cbuf 數(shù)據(jù)集合存儲緩沖區(qū)Dcom 服務(wù)器端命令執(zhí)行結(jié)果存儲緩區(qū)在系統(tǒng)中,根據(jù)生存周期按BfunAappCbufDcom的順序從大到小存放變量和數(shù)據(jù)對象。具體約定如下:Bfun 系統(tǒng)級全局變量。如:用戶的登錄信息和操作記錄。Aapp 功能級全局變量。如:步驟
8、狀態(tài)參數(shù)、功能常數(shù)。Cbuf 如果一個功能在操作上存在多個步驟,在其中不確定的連續(xù)幾個步驟中會用到的公共數(shù)據(jù)就保存在這個框架中,如一個緩沖表。Dcom 針對Cbuf,此框架只保存在多個步驟中的一步里需要用到的數(shù)據(jù)。如:函數(shù)計算結(jié)果。 Cbuf及Dcom框架中保存的數(shù)據(jù)主要從服務(wù)器上取得。3程序流程說明 在一個具體的功能中,Aapp對整個程序流程進行控制。Aapp通過對象關(guān)系取得Bfun中的變量值或調(diào)用Bfun中的函數(shù)。而Cbuf及Dcom中會包含一個完整的服務(wù)器端處理流程,AAPP在適當?shù)臅r候?qū)I(yè)務(wù)流程控制權(quán)交給Cbuf或Dcom,Cbuf或Dcom在流程執(zhí)行完成之后必須將流程控制權(quán)還給Aap
9、p。由于借助了DOM中對象的方法與觸發(fā)事件,Aapp中可以實現(xiàn)部分數(shù)據(jù)更新,就象一個C/S中的客戶端程序。如上圖,Cbuf與Dcom負擔了與WEB SERVER及DATABASE的數(shù)據(jù)交換工作,使Aapp在第一次被裝入后就只需要在客戶端瀏覽器中運行。這樣,Aapp中的主要界面就不需要進行刷新,避免了頁面刷新時造成的延遲和閃爍問題。而Cbuf與Dcom中可以只,根據(jù)約定格式返回數(shù)據(jù)和一個事件觸發(fā)腳本,數(shù)據(jù)傳輸量可以根據(jù)需要降到最小,又因為Cbuf與Dcom沒有可視界,因此在瀏覽器中的加載速度也是最快的。另外,Bfun中保存了大部分的函數(shù)和變量,即使Aapp的頁面需要重載,也只需要重載該頁面專用的
10、一部分內(nèi)容。4數(shù)據(jù)存儲格式約定 將數(shù)據(jù)寫入Aapp界面中的方式有兩種:一種是在Cbuf與Dcom定制腳本將數(shù)據(jù)寫到Aapp中;另一種則是由Aapp中的腳本讀取Cbuf與Dcom中的數(shù)據(jù)再寫到自已的界面上。兩種方法最終都要保證Aapp取得程序流程控制權(quán)。當從服務(wù)器上取到的數(shù)據(jù)比較少時(比如出錯提出示信息),前一種方法是可行的。但當從服務(wù)器取回的是一個數(shù)據(jù)集合(比如多行的記錄集)時,前一種方法會造成控制腳本太長的問題,而且靈活性也不如后一種方法。而且按照各框架的分工,數(shù)據(jù)的控制功能應(yīng)該由Aapp去完成。因此后一種方法是數(shù)據(jù)控制的主要方法,但采用后一種方法必須在Cbuf與Dcom中定義一個數(shù)據(jù)格式。
11、在數(shù)據(jù)量少的時候,可以用變量保存數(shù)據(jù),變量名可以在提交URL時定義,也可以使用默認變量名。兩種定義方式性能差別不大,具體采用那一種可以根據(jù)個人喜好而定。在數(shù)據(jù)量比較大時,最常見的情況是在服務(wù)器上取回了一個若干行的記錄集。這時可以采用表格保存數(shù)據(jù)。具體格式如下:假設(shè)在提交ASP文件的URL時定義的表格對象名為rsTest,則會返回兩個表格對象rsTest和rsTestStru。RsTestStru用來存放記錄集的列屬性數(shù)據(jù)。這個表由固定的五 列組成:1ID 列順序號2NAME 名稱3TYPE 數(shù)據(jù)類型4LENGTH 長度5PREC 小數(shù)位RsTest用來存放記錄集的各行數(shù)據(jù)。 在DOM中,表格對象的行和列都有屬于相應(yīng)的對象集合。通過指定行和列的序號能夠很準確的定位到任何一個數(shù)據(jù)元素,再結(jié)合innerText屬性便可以取出想要的數(shù)據(jù)。但DOM并沒有給出對表格元素進行排序及查找的方法,因此我們必須自己編寫這方面的函數(shù)腳本。對于實際的WEB-MIS,還要考慮ASP及數(shù)據(jù)庫方面的程序優(yōu)化問題;一些額外的功能,如打印控制等,仍需要借助ActiveX或Java applet來實現(xiàn),這里不作討論。四、應(yīng)用實例本方案在“深圳市自來水公司管
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)學課堂互動教學與孩子思維培養(yǎng)
- 運動教育提升孩子綜合能力的關(guān)鍵
- 語言教育在家庭環(huán)境下的實踐與思考
- 科技產(chǎn)品開發(fā)中的字體、配色創(chuàng)新與版權(quán)保護策略
- 打造未來辦公模式-現(xiàn)代辦公設(shè)備與環(huán)境綜合改善方案發(fā)布
- 食物搭配與食材選用的科學指南
- 現(xiàn)代學校安全管理體系的構(gòu)建與實施
- 2025年眉山藥科職業(yè)學院高職單招語文2018-2024歷年參考題庫頻考點含答案解析
- 面部保養(yǎng)課程針對兒童的特別指導(dǎo)
- 科技驅(qū)動下的客戶服務(wù)體驗升級匯報
- 長江委水文局2025年校園招聘17人歷年高頻重點提升(共500題)附帶答案詳解
- IF鋼物理冶金原理與關(guān)鍵工藝技術(shù)1
- JGJ46-2024 建筑與市政工程施工現(xiàn)場臨時用電安全技術(shù)標準
- 銷售提成對賭協(xié)議書范本 3篇
- EPC項目階段劃分及工作結(jié)構(gòu)分解方案
- 《跨學科實踐活動4 基于特定需求設(shè)計和制作簡易供氧器》教學設(shè)計
- 術(shù)后病人燙傷不良事件PDCA循環(huán)分析
- 金字塔原理完整版本
- 家譜、宗譜頒譜慶典講話
- pp顧問的常見面試問題
- 法理學原理與案例完整版教學課件全套ppt教程
評論
0/150
提交評論