web互動開發中的非同步、實時web互動技術,是當前web應用技術研究領域的新熱點之一。
基於http協議的web應用中,所有的請求都是由客戶端發起的,服務端處於被動響應的地位,因此服務端不能主動的把新資料傳送給客戶端。傳統的web互動技術在實時要求較高的環境下顯得力不從心。
最初,客戶端通過設定自動重新整理時間的方式來使瀏覽器主動重新整理,此方式的缺點如下:
<1>重新整理頁面時,網頁會出現空白,影響使用者體驗。
<2>大多數情況下,更新的資訊只是很小的一部分。而重新整理整個頁面的資訊量大,增加了網路負載,重新整理的速度也慢。
<3>客戶端設定的定時自動重新整理不能真正的實時獲得最新資訊,是有延遲的。
如何實時獲取伺服器端的最新資料,是web實時互動關注的內容。web實時互動的4種技術,輪詢、長輪詢、長連線和推送。
輪詢:客戶端定時傳送請求,伺服器端接收到客戶端請求後,馬上進行相應,並關閉連線。
長輪詢:客戶端傳送請求,伺服器端接收到客戶端請求後進行阻塞,並保持連線,當伺服器端有資料需要響應時,使用保持住的連線進行響應,並關閉連線。
長連線:客戶端傳送請求,伺服器端接收客戶端請求後進行阻塞,並保持連線;當伺服器端有資料需要響應是,使用保持住的連線進行響應,並保持住連線。
推送:客戶端與伺服器建立連線後,伺服器端可以直接將資料推送給客戶端。
其中,輪詢是不斷、迴圈使用基於http協議的傳統web互動方式,對伺服器端資料進行獲取,其在滿足實時更新伺服器端資訊時有一定延遲。除此之外,長輪詢、長連線及推送都可以滿足實時更新伺服器端資訊,屬於實時web互動技術範疇。
針對傳統的web技術的三個缺點,現在的web互動技術有了新的進展。主要分為三個大類,以iframe為代表的模擬非同步傳輸,以ajax為代表的瀏覽器段技術的異同通訊技術,和以websocket為代表的真正實現「伺服器推」的非同步技術。每個技術都值得深入的研究和分析。
Linux初步入門
對於linux的初步入門以前都要對計算機概論有一些了解。1.計算機 接收使用者輸入指令與資料,經過 處理器的資料與邏輯單元運算處理後,以產生或儲存成有用的資訊。2.計算機五大硬體 輸入單元 輸出單元 cpu內部的控制單元 算術邏輯單元與記憶體五大部分。3.cpu種類 精簡指令集 risc 與複雜指令...
python初步入門
help obj 檢視幫助 import 檔名 匯入乙個檔案 from 檔名 import 方法名 匯入檔案中的乙個方法 dir var 檢視變數屬性和方法 none 空物件 邏輯運算 and or not elif elseif 沒有switch語句 沒有三目運算子 for迴圈 for 變數 in...
Treap初步入門
樹堆,在資料結構中也稱 rm treap 是指有乙個隨機附加域滿足堆的性質的二叉搜尋樹,其結構相當於以隨機資料插入的二叉搜尋樹。其基本操作的期望時間複雜度為 rm o logn 相對於其他的平衡二叉搜尋樹,rm treap 的特點是實現簡單,且能基本實現隨機平衡的結構。rm q 為什麼要用 rm t...