摘要:跟沒有關系,只是復用了握手通道,用來升級協議。的作用輪詢客戶端以一定的時間間隔向服務端發出請求,以頻繁請求的方式來保持客戶端和服務器端的同步。如果在設定的時間段內未收到通知,則服務器發送響應以終止打開的請求。
webSocket是什么
webSocket是HTML5新出的一種協議,底層是基于TCP/IP協議的。跟http沒有關系,只是復用了http握手通道,用來升級協議。
webSocket的作用輪詢:客戶端以一定的時間間隔向服務端發出請求,以頻繁請求的方式來保持客戶端和服務器端的同步。缺點:
瀏覽器需要不斷的向服務器發出請求,然而HTTP請求可能包含較長的頭部,其中真正有效的數據可能只是很小的一部分,顯然這樣會浪費很多的帶寬等資源。
長輪詢:瀏覽器向服務器發送請求,服務器將請求保持打開一段時間。如果在該時間段內收到通知,則將包含該消息的響應發送到客戶端。如果在設定的時間段內未收到通知,則服務器發送響應以終止打開的請求。缺點:
當具有較高的消息量時,長輪詢不會提供比傳統輪詢更大的性能改進
服務器端會阻塞請求直到有數據傳遞或超時才返回
使用webSocket瀏覽器和服務器只需要完成一次握手,兩者之間就直接可以創建持久性的連接,并進行雙向數據傳輸。
優點:
能更好的節省服務器資源和帶寬
支持雙向通信,實時性更強
可以發送文本,也可以發送二進制數據
webSocket的使用服務端:
var app = require("express")(); var WebSocket = require("ws"); var wss = new WebSocket.Server({ port: 8080 }); wss.on("connection", function connection(ws) { ws.on("message", function incoming(message) { console.log(message); }); ws.send("the content from server"); }); app.listen(3000,() => { console.log("you are listening port 3000"); });
客戶端:
webSocket應用場景社交聊天、彈幕、多玩家游戲、協同編輯、股票基金實時報價、體育實況更新、視頻會議/聊天、基于位置的應用、在線教育、智能家居等需要高實時的場景
參考資料:
Comet:基于 HTTP 長連接的“服務器推”技術
Benefits of WebSocket
WebSocket:5分鐘從入門到精通
《web性能優化權威指南》
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/98148.html
摘要:概述本文是系列的第一篇,主要介紹相關的基礎協議知識和。客戶端收到響應后,立即發起下一次的請求。收到消息通過事件來接收消息。類型則需要傳遞一個對象作為參數,相關的內容也將在本系列第二篇中進行介紹。 概述 本文是WebSocket系列的第一篇,主要介紹WebSocket相關的基礎協議知識和API。由于WebSocket的相關介紹在MDN中分布較亂,初學者不太容易入門,因此通過本文將相關基礎...
摘要:服務端確認協議版本,升級為協議。自己寫了一個例子,服務端在開始連接后,利用定時器主動向客戶端發送隨機數,客戶端也可以發給服務器消息,然后服務器返回這條消息給客戶端。 寫在前面 webSocket是一項可以讓服務器將數據主動推送給客戶端的技術。前幾天寫了一個日志功能,日志數據需要實時更新。正好項目中有封裝好的WebSocket組件,且接口支持webSocket,就用它實現了。也是第一次用...
摘要:服務端確認協議版本,升級為協議。自己寫了一個例子,服務端在開始連接后,利用定時器主動向客戶端發送隨機數,客戶端也可以發給服務器消息,然后服務器返回這條消息給客戶端。做的事情就是給頁面的元素綁定事件。 寫在前面webSocket是一項可以讓服務器將數據主動推送給客戶端的技術。前幾天寫了一個日志功能,日志數據需要實時更新。正好項目中有封裝好的WebSocket組件,且接口支持webSock...
摘要:簡單實現參考此文章只限于版本大于前期準備端這里會在開始連接時就調用這里會挺住等待發送消息先執行這里在這里停住等待二加密實現這里應該是要填寫加密的文件此處沒有深入研究三服務器和瀏覽器的實現此處先執行代碼然后再打開瀏覽器就可以看到過程同步例子 簡單實現 參考:https://websockets.readthedoc...PS:此文章只限于python版本大于3.6 前期準備 pip in...
摘要:概述本文為協議的第十一章,本文翻譯的主要內容為的相關注意事項。應用協議使用這個協議規范互操作性注意事項使用時需要使用或者更高版本的協議。安全性注意事項見安全性注意事項一節。 概述 本文為 WebSocket 協議的第十一章,本文翻譯的主要內容為 WebSocket 的 IANA 相關注意事項。 IANA 注意事項(協議正文) 11.1 注冊新 URI 協議 11.1.1 注冊 ws 協...
閱讀 2338·2021-11-24 11:16
閱讀 2022·2021-09-30 09:47
閱讀 1997·2021-09-10 10:51
閱讀 1316·2019-08-30 14:08
閱讀 3133·2019-08-30 13:47
閱讀 1522·2019-08-30 13:02
閱讀 3227·2019-08-29 12:29
閱讀 3179·2019-08-26 17:05