偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

AJAX推送與拉取方式的比較

開發(fā) 前端
使用Ajax可以開發(fā)出基于瀏覽器的具有高用戶交互性和幾乎不易覺(jué)察到延遲的web應(yīng)用,本文向您介紹AJAX推送的相關(guān)知識(shí)。

  實(shí)時(shí)的動(dòng)態(tài)數(shù)據(jù)比如新聞標(biāo)題、證券報(bào)價(jià)和拍賣行情都需要盡快地發(fā)送給用戶。然而,AJAX仍然受限于web請(qǐng)求/響應(yīng)架構(gòu)的弱點(diǎn),使得服務(wù)器不能推送實(shí)時(shí)動(dòng)態(tài)的web數(shù)據(jù)。

  Delft科技大學(xué)的Engin Bozdag、Ali Mesbah和Arie van Deursen一起討論了下面這些可以實(shí)現(xiàn)基于web的實(shí)時(shí)事件通知的方法:

  1.HTTP拉取方式:在這種傳統(tǒng)的方法中,客戶端以用戶可定義的時(shí)間間隔去檢查服務(wù)器上的最新數(shù)據(jù)。這種拉取方式的頻率要足夠高才能保證很高的數(shù)據(jù)精確度,但高頻率可能會(huì)導(dǎo)致多余的檢查,從而導(dǎo)致較高的網(wǎng)絡(luò)流量。而另一方面,低頻率則會(huì)導(dǎo)致錯(cuò)過(guò)更新的數(shù)據(jù)。理想地,拉取的時(shí)間間隔應(yīng)該等于服務(wù)器狀態(tài)改變的速度。

  2.HTTP流:這種方法由存在于不間斷的HTTP連接響應(yīng)中或某個(gè)XMLHttpRequest連接中的服務(wù)器數(shù)據(jù)流所組成。

  3.反轉(zhuǎn)AJAX:服務(wù)流應(yīng)用到AJAX推送,就是所謂的反轉(zhuǎn)AJAX 或者COMET 。它使得服務(wù)器在某事件發(fā)生時(shí)可以發(fā)送消息給客戶端,而不需要客戶端顯式的請(qǐng)求。目標(biāo)在于達(dá)到狀態(tài)變化的實(shí)時(shí)更新。COMET使用了HTTP/1.1中的持續(xù)連接的特性。通過(guò)HTTP/1.1,除非另作說(shuō)明,服務(wù)器和瀏覽器之間的TCP連接會(huì)一直保持連接狀態(tài),直到其中一方發(fā)送了一條明顯的“關(guān)閉連接”的消息,或者有超時(shí)以及網(wǎng)絡(luò)錯(cuò)誤發(fā)生。

  4.長(zhǎng)時(shí)間輪詢:也就是所謂的異步輪詢,這種方式是純服務(wù)器端推送方式和客戶端拉取方式的混合。它是基于BAYEUX協(xié)議的。這個(gè)協(xié)議遵循基于主題的發(fā)布——訂閱機(jī)制。在訂閱了某個(gè)頻道后,客戶端和服務(wù)器間的連接會(huì)保持打開狀態(tài),并保持一段事先定義好的時(shí)間。如果服務(wù)器端沒(méi)有事件發(fā)生,而發(fā)生了超時(shí),服務(wù)器端就會(huì)請(qǐng)求客戶端進(jìn)行異步重新連接。如果有事件發(fā)生,服務(wù)器端會(huì)發(fā)送數(shù)據(jù)到客戶端,然后客戶端重新連接。

  在他們的實(shí)驗(yàn)性研究中,作者們?cè)谝粋€(gè)利用COMET推送方式實(shí)現(xiàn)(Dojo的Cometd庫(kù))的AJAX推送應(yīng)用和一個(gè)純拉取方式的應(yīng)用之間,對(duì)數(shù)據(jù)一致性、服務(wù)器性能、網(wǎng)絡(luò)性能以及數(shù)據(jù)遺失進(jìn)行了比較。

【編輯推薦】

  1. 高手Java核心技術(shù)學(xué)習(xí)筆記
  2. 告訴你怎樣學(xué)Java才是硬道理
  3. 如何獲取Sun推出的Java認(rèn)證
  4. 共同學(xué)習(xí)Java環(huán)境變量
  5. JAVA環(huán)境變量的設(shè)置
責(zé)任編輯:王觀 來(lái)源: 天極網(wǎng)
相關(guān)推薦

2013-01-15 11:22:29

AjaxASP.NET

2013-04-10 18:48:56

微信公眾平臺(tái)技巧

2012-08-23 09:56:40

AJAX

2012-12-25 16:23:10

Android推送

2010-06-24 16:42:30

視頻監(jiān)控

2023-11-06 01:39:02

Go語(yǔ)言開發(fā)

2009-06-25 13:43:00

Buffalo AJA

2009-07-30 12:19:32

ASP.NET中使用A

2011-07-04 15:41:14

AjaxASP.NET

2024-12-27 11:24:22

RocketMQ存儲(chǔ)消息

2022-12-13 09:01:50

云原生組件數(shù)據(jù)

2019-10-21 11:43:00

DockerGradleJava

2011-04-01 16:14:17

ADSL接入方式PPPoE

2009-12-25 16:58:19

ADSL接入方式

2020-06-12 08:28:29

JavaScript開發(fā)技術(shù)

2010-04-25 16:55:38

實(shí)現(xiàn)負(fù)載均衡

2011-07-12 13:53:25

ASP.NETAjax

2009-03-13 09:48:33

ASP.NETAjaxJQuery

2009-06-23 13:55:20

JavaFXRIA

2024-04-22 08:33:55

ReactDiffObject.is
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)