- 輪詢:客戶端定時向伺服器發送Ajax請求,伺服器接到請求後馬上回傳回應訊息並關閉連線。
優點:後端程式編寫比較容易。
缺點:請求中有大半是無用,浪費頻寬和伺服器資源。
實例:適於小型應用。
- 長輪詢:客戶端向伺服器發送Ajax請求,伺服器接到請求後hold住連接,直到有新訊息才返回回應訊息並關閉連接,客戶端處理完回應訊息後再向伺服器發送新的請求。
優點:在無訊息的情況下不會頻繁的請求。
缺點:伺服器hold連線會消耗資源。
實例:WebQQ、Hi網頁版、Facebook IM。
另外,對於長連接和socket連接也有區分:
- 長連接:在頁面裡嵌入一個隱蔵iframe,將這個隱蔵iframe的src屬性設為一個長連接的請求,伺服器端就能源源不斷地往客戶端輸入資料。
優點:訊息即時到達,不發無用請求。
缺點:伺服器維護一個長連線會增加開銷。
實例:Gmail聊天
- Flash Socket:在頁面中內嵌入一個使用了Socket類別的Flash 程式JavaScript透過呼叫此Flash程式提供的Socket介面與伺服器端的Socket介面進行通信,JavaScript在收到伺服器端傳送的資訊後控制頁面的顯示。
優點:實現真正的即時通信,而不是偽即時。
缺點:客戶端必須安裝Flash插件;非HTTP協議,無法自動穿越防火牆。
實例:網路互動遊戲。
以上是四種請求方式的介紹和優缺點比較。
版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。
以上就介紹了輪詢,長輪詢,長連接,Flash Socket,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31