• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      量化分析Ajax性能與應(yīng)用決策

      2014-09-21 07:14:38陳小奎方賢文
      長春大學(xué)學(xué)報 2014年6期
      關(guān)鍵詞:用戶名網(wǎng)頁頁面

      陳小奎,方賢文

      (安徽理工大學(xué) 理學(xué)院,安徽 淮南 232001)

      0 引言

      Ajax的全稱是Asynchronous JavaScript and XML(異步JavaScript和XML)。它有別于傳統(tǒng)web開發(fā)中采用的同步的方式[1]。Ajax的原理簡單說來就是通過XmlHttpRequest對象來向服務(wù)器發(fā)異步請求,從服務(wù)器獲得數(shù)據(jù),然后用javaScript來操作DOM而更新頁面數(shù)據(jù),達到不刷新整個頁面而更新了頁面數(shù)據(jù)的功能[2]。

      Ajax的優(yōu)點主要是:

      (1)頁面無刷新前提下實現(xiàn)了頁面內(nèi)與服務(wù)器通信,給用戶體驗非常好[3]。

      (2)使用異步方式與服務(wù)器通信,不需要打斷用戶的操作,具有更加迅速的響應(yīng)能力[4]。

      (3)可以把以前一些服務(wù)器負擔(dān)的工作轉(zhuǎn)嫁到客戶端,減輕服務(wù)器的負擔(dān)[5]。

      Ajax技術(shù)的缺點主要有:

      (1)Ajax技術(shù)破壞了瀏覽器的后退機制[6]。

      (2)Ajax技術(shù)建立了一個對企業(yè)數(shù)據(jù)的直接通道。暴露比傳統(tǒng)網(wǎng)頁更多的數(shù)據(jù)和服務(wù)器邏輯[7]。

      (3)違背了URL的初衷。一個采用了Ajax技術(shù)URL地址下看到的內(nèi)容可能是不同的,這和統(tǒng)一資源定位的初衷是相背離的[8]。

      當(dāng)使用Ajax技術(shù)來開發(fā)一個動態(tài)網(wǎng)站系統(tǒng)時,需要考慮Ajax的執(zhí)行效率、可靠性和可維護性等方面。當(dāng)前國內(nèi)外對Ajax技術(shù)的研究主要在討論該技術(shù)的優(yōu)點和定性的分析其性能指標[9]。這也造成了Ajax技術(shù)濫用現(xiàn)象,很多開發(fā)人員不考慮實際需要盲目的將這項技術(shù)強加在網(wǎng)站系統(tǒng)中,加大了系統(tǒng)開發(fā)和維護的難度,增加了系統(tǒng)運行的負擔(dān)[10]。本文設(shè)計一個實驗網(wǎng)站,測定數(shù)據(jù)庫服務(wù)耗時和網(wǎng)絡(luò)響應(yīng)時間,建立數(shù)學(xué)模型定量的分析Ajax性能,嘗試給出網(wǎng)站開發(fā)各功能模塊中是否使用Ajax技術(shù)的建議,以構(gòu)建一個更高效系統(tǒng)。

      1 實驗設(shè)計

      Ajax技術(shù)在Web站點中的最常用的應(yīng)用方面是注冊賬號的時候檢測用戶名是否重復(fù),郵箱是否重復(fù),多級下拉菜單的讀取。本文主要針對檢測用戶名是否重復(fù)方面設(shè)計一個實驗網(wǎng)站,并租用網(wǎng)絡(luò)空間發(fā)布該網(wǎng)站,以測得第一手數(shù)據(jù)。

      1.1 實驗平臺的搭建

      本文中實驗采用當(dāng)前Web開發(fā)中較常用的JSP技術(shù),實驗服務(wù)器環(huán)境Apache、Tomcat6.0、MySQL5.5數(shù)據(jù)庫,開發(fā)工具采用MyEclipse6.5。并將項目發(fā)布到租用空間,實驗多次用到數(shù)據(jù)庫操作,將數(shù)據(jù)庫封裝成DBLink.java類,其部分關(guān)鍵代碼如下:

      1.2 檢驗重復(fù)模塊實驗設(shè)計

      檢驗重復(fù)模塊實驗從程序執(zhí)行時間設(shè)計,共設(shè)計了三個實驗。

      實驗一:計算數(shù)據(jù)庫添加操作執(zhí)行時間設(shè)計,設(shè)計一個JSP頁面,在執(zhí)行程序前獲得當(dāng)前時間,在操作數(shù)據(jù)庫后測得結(jié)束時的當(dāng)前時間,用結(jié)束時間減去起始時間獲得數(shù)據(jù)庫操作所需時間,這段時間包含打開關(guān)閉數(shù)據(jù)庫時間和數(shù)據(jù)庫操作時間。所以,實驗中設(shè)計了可以一次添加多條記錄,以總結(jié)出計算公式,部分關(guān)鍵代碼如下:

      執(zhí)行實驗一程序測得數(shù)據(jù)如表1所示。利用添加記錄數(shù)和平均耗時構(gòu)造成一系列離散點,并擬合成一條直線,如圖1所示。

      表1 數(shù)據(jù)庫更新操作時間測定實驗數(shù)據(jù)表

      圖1 MySQL數(shù)據(jù)庫更新操作耗時統(tǒng)計圖

      由得到的直線方程可以計算出數(shù)據(jù)庫更新操作時打開和關(guān)閉數(shù)據(jù)庫時間和數(shù)據(jù)庫添加一條記錄的時間。實驗二:測定查詢數(shù)據(jù)庫時間,在執(zhí)行查詢程序前獲得當(dāng)前時間,在操作數(shù)據(jù)庫后測得結(jié)束時的當(dāng)前時間,用結(jié)束時間減去起始時間獲得數(shù)據(jù)庫操作所需時間。部分關(guān)鍵代碼如下:

      執(zhí)行實驗二程序測得數(shù)據(jù)如表2所示。利用添加記錄數(shù)和平均耗時構(gòu)造成一系列離散點,并擬合成一條直線,如圖2所示。

      表2 數(shù)據(jù)庫查詢操作時間測定實驗數(shù)據(jù)表

      圖2 MySQL數(shù)據(jù)庫查詢操作耗時統(tǒng)計圖

      由得到的直線方程可以計算出查詢操作時打開和關(guān)閉數(shù)據(jù)庫時間和查詢數(shù)據(jù)庫一條記錄的時間。

      通過實驗一和實驗二測算出的數(shù)據(jù)是針對于特定的Web站點運行環(huán)境的,網(wǎng)站開發(fā)人員可以依據(jù)項目實際運行環(huán)境應(yīng)用這兩個實驗方法測算出相應(yīng)數(shù)據(jù)。

      2 建模分析Ajax性能

      2.1 Ajax技術(shù)的程序流程分析

      在通過實驗獲得了網(wǎng)站執(zhí)行效率的數(shù)據(jù)后,對傳統(tǒng)網(wǎng)頁和應(yīng)用了Ajax的網(wǎng)頁的程序流程進行對比來建立數(shù)學(xué)模型。傳統(tǒng)網(wǎng)頁實現(xiàn)用戶注冊流程為用戶點擊注冊后打開數(shù)據(jù)庫后,遍歷記錄判斷用戶名是否重復(fù),若重復(fù)則提示重復(fù)返回注冊頁面重新輸入,不重復(fù)則直接添加用戶,然后關(guān)閉數(shù)據(jù)庫。流程如圖3所示。

      應(yīng)用Ajax技術(shù)的網(wǎng)頁實現(xiàn)用戶注冊流程為用戶輸入用戶名后異步訪問檢測頁面,打開數(shù)據(jù)庫后,遍歷記錄判斷用戶名是否重復(fù),重復(fù)則返回提示信息,不重復(fù)則提示用戶名可用信息,關(guān)閉數(shù)據(jù)庫。點擊添加按鈕確定時再次打開數(shù)據(jù)庫添加注冊信息,然后關(guān)閉數(shù)據(jù)庫,流程如圖4所示。

      圖3 傳統(tǒng)網(wǎng)頁注冊用戶流程圖

      圖4 應(yīng)用Ajax技術(shù)的網(wǎng)頁注冊用戶流程圖

      2.2 模型構(gòu)建

      設(shè)傳統(tǒng)網(wǎng)頁服務(wù)器處理注冊時數(shù)據(jù)庫耗時為Tt,那么用戶名不重復(fù)時Tt=To+Ts+Ti+Tc;用戶名重復(fù)時Tt=To+Ts+Tc+Td。其中To為打開數(shù)據(jù)庫所需要時間,Ts為遍歷搜索輸入信息是否重復(fù)的時間,Ti為數(shù)據(jù)庫添加記錄的時間,Tc為數(shù)據(jù)庫關(guān)閉時間,Td為頁面重定向時間,Td可以由實驗三測算出來。

      實驗三設(shè)計原理是在當(dāng)前頁面(current.jsp)中獲取到當(dāng)前時間,利用seesion對象將這個時間值傳遞到跳轉(zhuǎn)的目標頁面(target.jsp),在跳轉(zhuǎn)的頁面中計算時間差。current.jsp中部分關(guān)鍵的代碼如下:

      target.jsp中部分關(guān)鍵的代碼如下:

      設(shè)應(yīng)用了Ajax技術(shù)網(wǎng)頁服務(wù)器處理注冊時數(shù)據(jù)庫耗時為Ta,那么用戶名不重復(fù)時Ta=2To+Ts+Ti+2Tc;用戶名重復(fù)時Ta=To+Ts+Tc。其中To為打開數(shù)據(jù)庫所需要時間,Ts為遍歷搜索輸入信息是否重復(fù)的時間,Ti為數(shù)據(jù)庫添加記錄的時間,Tc為數(shù)據(jù)庫關(guān)閉時間。

      通過以上分析,在重復(fù)可能性較少時,傳統(tǒng)網(wǎng)頁的服務(wù)器負擔(dān)更小,重復(fù)可能性較大時,應(yīng)用Ajax技術(shù)則更有優(yōu)勢。我們假設(shè)重復(fù)率為h,那么傳統(tǒng)網(wǎng)頁處理注冊時服務(wù)器平均耗時

      應(yīng)用了Ajax技術(shù)網(wǎng)頁服務(wù)器處理注冊時數(shù)據(jù)庫平均耗時

      3 結(jié)語

      本文通過搭建JSP的實驗平臺并通過兩個實驗測算出服務(wù)器在處理數(shù)據(jù)庫添加和查詢時平均耗時,分析傳統(tǒng)網(wǎng)頁與應(yīng)用了Ajax技術(shù)的網(wǎng)頁的程序流程,建立相應(yīng)的數(shù)學(xué)模型,提供了模型中所需要參數(shù)的計算方法和實驗。本文中不足是注冊重復(fù)率的估算還不夠精確,應(yīng)用概率論知識測算重復(fù)率是我們進一步研究的內(nèi)容。

      [1]Mesbah A,Bozdag E,van Deursen A.Crawling AJAX by inferring user interface state changes[C]//Web Engineering,2008.ICWE'08.Eighth International Conference on.IEEE,2008:122-134.

      [2]Duda C,F(xiàn)rey G,Kossmann D,et al.AJAX crawl:making AJAX applications searchable[C]//Data Engineering,2009.ICDE'09.IEEE 25th International Conference on.IEEE,2009:78-89.

      [3]Singh A K.Ajax Asynchronous Database Refresh[J].International Journal of Information,2012,2(8):669-703.

      [4]裴生雷.Ajax+JSP開發(fā)模式的研究及應(yīng)用[J].計算機技術(shù)與發(fā)展,2013,23(1):242-245.

      [5]張濤,黃強,毛磊雅,等.一個基于JSON的對象序列化算法[J].計算機工程與應(yīng)用,2007,43(15):98-100.

      [6]Wusteman J,O'hlceadha P.Using Ajax to Empower Dynamic Searchinb[J].Information Technology and Libraries,2013,25(2):57-64.

      [7]Zepeda J S,Chapa S V.From desktop applications towardsajax web applications[C]//Electrical and Electronics Engineering,2007.ICEEE 2007.4th International Conference on.IEEE,2007:193-196.

      [8]譚力,楊宗源,謝瑾奎.Ajax技術(shù)的數(shù)據(jù)響應(yīng)優(yōu)化[J].計算機工程,2010,36(7):52-54.

      [9]Stepien B,Peyton L,Xiong P.Framework testing of web applications using TTCN-3[J].International Journal on Software Tools for Technology Transfer,2008,10(4):371-381.

      [10]Roest D,Mesbah A,van Deursen A.Regression testingAjax applications:Coping with dynamism[C]//Software Testing,Verification and Validation(ICST),2010 Third International Conference on.IEEE,2010:127-136.

      猜你喜歡
      用戶名網(wǎng)頁頁面
      大狗熊在睡覺
      《護士進修雜志》投稿程序
      刷新生活的頁面
      基于CSS的網(wǎng)頁導(dǎo)航欄的設(shè)計
      電子制作(2018年10期)2018-08-04 03:24:38
      機智的快遞員
      故事會(2017年17期)2017-09-04 17:36:42
      基于URL和網(wǎng)頁類型的網(wǎng)頁信息采集研究
      電子制作(2017年2期)2017-05-17 03:54:56
      網(wǎng)頁制作在英語教學(xué)中的應(yīng)用
      電子測試(2015年18期)2016-01-14 01:22:58
      10個必知的網(wǎng)頁設(shè)計術(shù)語
      同一Word文檔 縱橫頁面并存
      淺析ASP.NET頁面導(dǎo)航技術(shù)
      汾阳市| 宁武县| 岐山县| 三都| 宜宾市| 太白县| 玉田县| 兴化市| 宜兴市| 惠州市| 合肥市| 海阳市| 丹江口市| 大石桥市| 东阳市| 山东省| 中牟县| 铅山县| 滁州市| 清涧县| 琼海市| 扶沟县| 宁化县| 霸州市| 凤翔县| 准格尔旗| 轮台县| 贵港市| 奉贤区| 邯郸市| 古蔺县| 庐江县| 凤冈县| 赣州市| 麻城市| 阿克陶县| 封丘县| 闵行区| 探索| 自治县| 康平县|