亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > AJAX > 正文

探討一種AJAX性能的改進方法

2024-07-21 02:28:49
字體:
來源:轉載
供稿:網友

  一、 引言

  在web表單中,我們使用ajax來從客戶端(通過javascript)調用服務端方法,而在ajax內部則進行xmlhttprequest調用。我測試了一些以不同方式實現的ajax函數。另外,我還監控分析了進行ajax調用的性能和生命周期。結果,我發現在web表單中使用ajax時存在一些嚴重的問題。不過,我也找到了這些問題的一種解決方法。在本文中,我正是想與各位分析這一問題及其相應的解決方案。

  二、 在使用ajax時所遇到的性能問題

  對于每一個ajax調用來說,我們都要創建包含ajax方法的類的一個實例。另外,如果我們在類級上使用new關鍵字的話,我們還要為字段、屬性及其它類級的變量創建實例。

  三、 實現方案

  我創建了一個工程,它包含兩個web表單:webform1.aspx和webform2.aspx,還有一個類student.vb。這兩部分code-behind頁面都使用了一個ajax函數getdata()和一個student類型的公共變量。借助于mxlogger類,我記錄下每一個階段的執行流程。

  注意:webform2.aspx的ajax函數getdata()是共享的,而在webform1中,它不是共享的。

'student.vb
public class student
 sub new()
  mxlogger.addlog("from student.constructor")
 end sub
 dim _name as string
 public property name() as string
  get
   return _name
  end get
  set(byval value as string)
   _name = value
  end set
 end property
end class
'webform1.aspx.vb
public class webform1
public student as new student
sub new()
 mxlogger.addlog("from webform1.constructor")
end sub
<ajax.ajaxmethod(ajax.httpsessionstaterequirement.read)> _
public function getdata() as string
 mxlogger.addlog("from webform1.ajax.getdata()")
 return "i m a non shared function"
end function
end class
'webform2.aspx.vb
public class webform2
public student as new student
sub new()
 mxlogger.addlog("from webform2.constructor")
end sub
<ajax.ajaxmethod(ajax.httpsessionstaterequirement.read)> _
public shared function getdata() as string
 mxlogger.addlog("from webform2.ajax.getdata()")
 return "i m a shared function"
end function
end class

  四、 測試應用程序

  · 測試用例1:

  運行webform1.aspx并且從javascript中調用getdata() ajax函數三次。

  · 測試用例2:

  運行webform2.aspx并且從javascript中調用getdata()ajax函數三次。

  對于上面的測試用例,我得到如下的日志輸出數據:

//請注意,為了解釋之目的,我在其中手工加入了一些日志行
log for the test case 1: ( non ajax shared function )
-------while loading the page--------
5/9/2006 10:37:29 am>>from student.constructor
5/9/2006 10:37:29 am>>from webform1.constructor
5/9/2006 10:37:29 am>>from webform1.ajax.getdata()
-------first call for getdata()--------
5/9/2006 10:37:29 am>>from student.constructor
5/9/2006 10:37:29 am>>from webform1.constructor
5/9/2006 10:37:29 am>>from webform1.ajax.getdata()
-------second call for getdata()--------
5/9/2006 10:37:29 am>>from student.constructor
5/9/2006 10:37:29 am>>from webform1.constructor
5/9/2006 10:37:29 am>>from webform1.ajax.getdata()
-------third call for getdata()--------
5/9/2006 10:37:30 am>>from student.constructor
5/9/2006 10:37:30 am>>from webform1.constructor
5/9/2006 10:37:30 am>>from webform1.ajax.getdata()
log for the test case 2: ( shared ajax function )
-------while loading the page--------
5/9/2006 10:37:09 am>>from student.constructor
5/9/2006 10:37:09 am>>from webform2.constructor
5/9/2006 10:37:09 am>>from webform2.ajax.getdata()
-------first call for getdata()--------
5/9/2006 10:38:11 am>>from webform2.ajax.getdata()
-------second call for getdata()--------
5/9/2006 10:38:11 am>>from webform2.ajax.getdata()
-------third call for getdata()--------
5/9/2006 10:38:11 am>>from webform2.ajax.getdata()

  我們可以看到,在上面的日志輸出數據中,對于測試用例1來說,我們能夠看到更多的來自于webform1和student的構造器的日志數據。

  五、 結論

  我的建議是,在所有可能的地方,我們應該使用針對于ajax的共享方法,以便它不會創建更多的web表單實例和類級的字段。這樣以來,我們就可以減少從gc中調用finalize()的次數。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色婷婷亚洲mv天堂mv在影片| 性日韩欧美在线视频| 中文字幕日韩电影| 日韩精品视频免费| 亚洲国产精品久久久久秋霞蜜臀| 久久亚洲影音av资源网| 成人性教育视频在线观看| 中文字幕精品国产| 日韩中文理论片| 68精品久久久久久欧美| 国产主播在线一区| 国产日韩综合一区二区性色av| 日韩激情视频在线| 美日韩在线视频| 插插插亚洲综合网| 91在线视频精品| 欧美韩国理论所午夜片917电影| 亚洲xxxx3d| 欧美亚洲另类视频| 亚洲一区二区在线播放| 亚洲黄色av网站| 国产精品一区二区三区久久| 欧美另类极品videosbest最新版本| 亚洲国产成人一区| 欧洲成人在线视频| 亚洲国产高清自拍| 亚洲午夜激情免费视频| 成人免费视频在线观看超级碰| 69久久夜色精品国产7777| 亚洲精选在线观看| 国产精品丝袜一区二区三区| 亚洲人成网站在线播| 国产一区视频在线播放| 成人激情视频在线播放| 青青草原一区二区| 91香蕉电影院| 国产精品一区二区三区久久久| 久久久久国产一区二区三区| 久久视频免费在线播放| 97精品久久久中文字幕免费| 97精品国产97久久久久久春色| 日韩欧美在线网址| 影音先锋日韩有码| 久久久国产精品x99av| 国产精品极品尤物在线观看| 91地址最新发布| 久久亚洲国产精品成人av秋霞| 国产日产久久高清欧美一区| 91精品国产99久久久久久| 久久影视电视剧凤归四时歌| 精品视频偷偷看在线观看| 欧美日韩成人在线视频| 久久国产精品久久精品| 欧美xxxwww| 亚洲欧美在线免费观看| 亚洲无av在线中文字幕| 国产成人97精品免费看片| 日韩精品欧美激情| 欧美xxxx做受欧美| 97在线看免费观看视频在线观看| 国产精品黄视频| 亚洲成人动漫在线播放| 国产在线观看精品| 久久久久久久久国产| 日韩国产精品亚洲а∨天堂免| 亚洲性猛交xxxxwww| 久久久999国产精品| 69久久夜色精品国产7777| 97在线精品国自产拍中文| 91在线视频一区| 欧美极品在线播放| 日韩精品在线观看一区二区| 久久久www成人免费精品张筱雨| 亚洲国产日韩欧美在线动漫| 亚洲一区二区中文字幕| 97激碰免费视频| 91精品视频免费看| 91产国在线观看动作片喷水| 欧美日韩精品在线| 久久久久久久影院| 欧美性xxxxx| 日本中文字幕不卡免费| 久久久久久久久久久亚洲| 97在线精品国自产拍中文| 欧美成人中文字幕在线| 中文字幕日韩av| 亚洲欧洲日产国码av系列天堂| 久久全国免费视频| 川上优av一区二区线观看| 亚洲精品中文字幕有码专区| 国产激情综合五月久久| 911国产网站尤物在线观看| 麻豆乱码国产一区二区三区| 亚洲毛茸茸少妇高潮呻吟| 亚洲字幕一区二区| 国产精品亚发布| 国产欧美精品一区二区| 国产丝袜精品第一页| 人妖精品videosex性欧美| 国产精品永久免费| 欧美电影在线观看完整版| 久久97精品久久久久久久不卡| 精品国产精品自拍| 欧美日韩精品在线| 日韩欧美中文字幕在线播放| 国产视频久久久| 国产日韩欧美日韩大片| 精品国产网站地址| 久久精品国产亚洲精品| 亚洲人精选亚洲人成在线| 欧美中文在线观看国产| 亚洲精品在线不卡| 中文字幕欧美在线| 欧美日韩视频免费播放| 在线播放精品一区二区三区| 最新日韩中文字幕| 17婷婷久久www| 久青草国产97香蕉在线视频| 神马国产精品影院av| 成人h视频在线观看播放| 欧美性受xxxx白人性爽| 亚洲男人天堂2023| 欧美日韩国产在线看| 搡老女人一区二区三区视频tv| 这里只有精品视频在线| 亚洲女人天堂视频| 在线观看成人黄色| 日韩精品亚洲精品| 亚洲人成电影网站色…| 97在线视频免费观看| 欧美午夜片欧美片在线观看| 91麻豆国产语对白在线观看| 91美女高潮出水| 国产www精品| 国产精品久久久久久久av大片| 欧美视频在线视频| 91av在线国产| 91免费人成网站在线观看18| 中文字幕亚洲天堂| 黑人精品xxx一区| 91免费人成网站在线观看18| 亚洲国产私拍精品国模在线观看| 国产精品九九九| 久久全国免费视频| 日本精品视频在线播放| 2021国产精品视频| 久久久久久美女| 91精品成人久久| 久久久久久亚洲| 欧美一区二区三区……| 综合网日日天干夜夜久久| 欧美视频一区二区三区…| 日韩欧美精品中文字幕| 亚洲日本欧美日韩高观看| 成人激情视频在线观看| 亚洲精品免费一区二区三区| 成人激情视频在线播放| 欧洲成人性视频| 久久久精品久久久久| 欧美激情综合亚洲一二区| 国产精品日韩一区| 91网站在线免费观看| 97精品一区二区三区| 欧美夫妻性生活视频|