国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

WebSocket:讓W(xué)eb更實(shí)時、更快速高效

admin
2012年6月15日 8:29 本文熱度 4498

 

   WebSocket協(xié)議可以實(shí)現(xiàn)瀏覽器與服務(wù)器之間的雙向?qū)崟r通訊,幫助在瀏覽器中運(yùn)行的App實(shí)現(xiàn)像傳統(tǒng)桌面程序一樣強(qiáng)大、即時的功能和體驗(yàn)。

    聊天、讀新聞、查股票行情、玩游戲……我們總是希望在瀏覽器中可以直接運(yùn)行各種應(yīng)用程序、完成各種復(fù)雜的任務(wù),而不必添加額外的瀏覽器插件。這就需要Web應(yīng)用程序能夠?qū)崟r運(yùn)行,但傳統(tǒng)的互聯(lián)網(wǎng)協(xié)議架構(gòu)并不是為現(xiàn)在的富互聯(lián)網(wǎng)應(yīng)用(RIA)設(shè)計(jì)的,因此開發(fā)者需要使用老架構(gòu)實(shí)現(xiàn)新功能,這時難免會遇到許多問題。現(xiàn)代Web應(yīng)用需要革新傳統(tǒng)C/S(客戶端/服務(wù)器)模式通訊的協(xié)議架構(gòu)——從單向的HTTP問答模式升級到雙向的實(shí)時通訊模式。國際標(biāo)準(zhǔn)化組織W3C和IETF在2011年12月正式采納了WebSocket協(xié)議,從此Web應(yīng)用不再需要冗雜的HTTP替代方案,就可以在WebSocket協(xié)議下更快速、更簡單地運(yùn)行。

HTTP是單行線

    為了通過網(wǎng)絡(luò)發(fā)送或者下載數(shù)據(jù),客戶端需要與服務(wù)器之間建立TCP連接。TCP連接是為保證在終端之間完成無損數(shù)據(jù)傳輸而設(shè)計(jì)的,使用IP地址和網(wǎng)絡(luò)端口進(jìn)行配對。眾所周知,數(shù)據(jù)(信息)不僅需要被傳輸,還需要被理解,所以還必須用到一個運(yùn)行在TCP傳輸層之上的應(yīng)用層協(xié)議,從而實(shí)現(xiàn)客戶端和服務(wù)器之間的“通話”。在網(wǎng)站上,這個應(yīng)用層協(xié)議主要就是HTTP協(xié)議。盡管TCP支持通過虛擬的透明傳輸層實(shí)現(xiàn)雙向數(shù)據(jù)傳輸,但是應(yīng)用層的HTTP協(xié)議并不支持該選項(xiàng)。簡單地說,雙向數(shù)據(jù)傳輸意味著允許從服務(wù)器端發(fā)送推送信息到客戶端,這是現(xiàn)代Web應(yīng)用程序的特性之一,但是“單向”的HTTP基于非常簡單的問答模型,客戶端發(fā)送“請求”,服務(wù)器端才會進(jìn)行“回復(fù)”。這樣做不僅速度慢而且成本高。

    為了保證用戶不需要頻繁地按下更新按鈕,程序員們想到了一些變通的方法,從而能夠通過HTTP協(xié)議“巧妙”地實(shí)現(xiàn)即時通訊。其中最簡單常用的一種方法是輪詢(Polling),也就是瀏覽器端的腳本代碼根據(jù)設(shè)定好的頻率向服務(wù)器“詢問”有沒有新事件。輪詢需要為每個請求建立一個新的連接,得到“回復(fù)”之后,服務(wù)器就會中斷連接。如此一來就會花費(fèi)更多的時間,而且頻繁地新建TCP連接也會增加通信量,從而導(dǎo)致線路開銷和網(wǎng)絡(luò)負(fù)載倍增。另一種變通方案——長輪詢(Long Polling)比輪詢更先進(jìn)一些,因?yàn)樗梢缘却?wù)器端有新的事件時才返回“通知”,縮短了可能會出現(xiàn)的通知延遲(Latency),讓消息傳輸更及時,但并這沒有完全解決網(wǎng)絡(luò)負(fù)載大的問題。 

    HTTP streaming是變通方案中最好的一個,它可以長時間保持連接不斷開,同時在后臺實(shí)現(xiàn)與服務(wù)器按照不規(guī)則的順序交換數(shù)據(jù)(無需刷新頁面)。不過缺點(diǎn)是需要大量運(yùn)用JavaScript對象XMLHttpRequest,該腳本在不同瀏覽器中的實(shí)現(xiàn)效果并不相同,而且它總是需要兩個HTTP連接才能完成實(shí)時雙向通訊。


 



    WebSocket協(xié)議通過建立套接層(Socket)解決以上替代方案出現(xiàn)的問題,該套接層可以通過IP地址和端口永久地維持客戶端與服務(wù)器之間的信道,這樣兩端就可以在一個連接中同時完成雙向的通訊,而不需要頻繁地發(fā)送“請求”。在HTTP握手建立連接時有一個幾乎已經(jīng)被忘記的功能——“協(xié)議協(xié)商升級”(upgrade)。WebSocket現(xiàn)在將“協(xié)議協(xié)商升級”重新引入,通過HTTP握手完成應(yīng)用層協(xié)議的升級。然后瀏覽器就可以調(diào)用WebSocket API,而不是JavaScript對象。是否啟用了WebSocket連接可以通過瀏覽器地址欄中的統(tǒng)一資源標(biāo)識符(URI)“ws://”和“wss://”(WebSocket安全協(xié)議)進(jìn)行識別。

    為了確保只有獲得允許的WebSocket終端之間才能進(jìn)行通訊,開發(fā)者在HTTP協(xié)議頭部增加了一些安全機(jī)制:客戶端在請求中生成一個基本的Base64編碼安全密鑰,服務(wù)器收到該密鑰之后對其進(jìn)行SHA-1加密,然后再返回給客戶端。從而避免WebSocket服務(wù)器遭遇未知源的惡意攻擊,保證只有已知的或者可信的客戶端才可以建立連接。

    另一個重要的保護(hù)機(jī)制出現(xiàn)在HTTP握手之后:WebSocket客戶端必須通過簡單的異或運(yùn)算模板加密每一個數(shù)據(jù)包,防止互相連接的代理服務(wù)器將WebSocket連接誤認(rèn)為成HTTP請求。如果不加密數(shù)據(jù)包的話,遭到惡意腳本劫持的代理服務(wù)器就有可能對其他用戶發(fā)起攻擊。加密之后,因?yàn)榇矸?wù)器無法讀取加密的信息,所以只能將其轉(zhuǎn)發(fā)到指定的終端。

    目前,并非所有的瀏覽器都支持最新的WebSocket協(xié)議。但是這種情況在接下來的幾個月會發(fā)生改變,因?yàn)閃ebSocket作為HTML5的重要特性之一,可以提供先進(jìn)的互聯(lián)網(wǎng)特性,讓W(xué)eb應(yīng)用更加快速、高效和強(qiáng)大。

該文章在 2012/6/15 8:29:10 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产欧美一区二区精品久 | 国产在线视频区电影 | 日韩a无v码在线播放免费 | 国产一级午夜av免费播放 | 丁香五月久久婷婷久久 | 亚洲欧美偷拍综合图区 | 精品无码人妻一区二 | 色婷婷久久免费网站 | 色一情一乱一伦一区二区三区 | 亚洲AV日韩精品一区二区不卡 | 精品无码成久久久久久 | 二区在线播放 | 欧美日韩激情视频 | 国产av无码专区亚洲精品网站 | 国产美女亚洲精品久久久综合毛片欧美 | 丰满白嫩人妻中出无码 | 亚洲国产成人va在线观看天堂 | 中国无码久久极品 | 欧美午夜a级限制福利片 | 欧美日韩精品久久久免费观看 | 国产三级在线观看视频不卡完整版国语 | 亚洲一区无码制服丝袜 | 亚洲A片无码一区二区蜜桃久久 | gay日韩男男gv片在线观看 | 国产成人无码aⅴ片在线观看视频 | 日韩欧美中文字幕一区 | 日韩欧美激情国产一区二区蜜 | 7777久久亚洲中文字幕蜜桃 | 亚洲首页国产精品丝袜 | 国语自产视频在线 | 亚洲av永久无码精品漫画 | 免费看美女被靠到爽的视频 | 欧美另类激情 | 三级观看av天堂 | 人妻天天爽 | 久久久久久国产精品免费免费 | 国产成人精品一区二三区 | 亚洲乱码日产精品bd | 人妻一区二区三区免看 | 国产成人亚洲精品 | 18精品久久久无码午夜福利 |