999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Web應(yīng)用中的實時消息交互技術(shù)

2017-03-17 22:46:27衣鵬
電子技術(shù)與軟件工程 2016年16期
關(guān)鍵詞:頁面

衣鵬

摘 要

本文主要介紹了Web實時消息交互技術(shù),以及目前在Web應(yīng)用中進(jìn)行實時消息交互的一些主流技術(shù)。

【關(guān)鍵詞】Web 實時消息

隨著Web的發(fā)展,客戶端與服務(wù)端之間的實時消息交互成為人們溝通交流的重要方式。比如門戶網(wǎng)站的實時新聞、SNS網(wǎng)站的用戶互動、企業(yè)網(wǎng)站的在線客服、大宗商品的即時交易、遠(yuǎn)程設(shè)備的實時監(jiān)控等常見的場景都需要用到基于Web的實時消息交互技術(shù)。

1 概述

Web實時消息交互應(yīng)用需要服務(wù)器端實時地、主動地將后臺出現(xiàn)的變化呈現(xiàn)在客戶端的瀏覽器上,而無需客戶手動地去刷新頁面。

在傳統(tǒng)的HTTP請求/響應(yīng)模式下,客戶端每建立一個連接都要向服務(wù)器端發(fā)送一個HTTP請求,當(dāng)收到來自服務(wù)器端的HTTP響應(yīng)后,如果該響應(yīng)完全被發(fā)送或接收,服務(wù)器端就會關(guān)閉該連接。

2 主流的Web實時消息交互技術(shù)

2.1 客戶端輪詢模式(Polling)

客戶端通過執(zhí)行網(wǎng)頁中的JS輪詢腳本,經(jīng)由HTTP方式向服務(wù)器端定期循環(huán)的發(fā)送請求,詢問是否有新的消息產(chǎn)生,接收來自服務(wù)器的請求響應(yīng),返回相應(yīng)信息,如果服務(wù)器端沒有響應(yīng),則會在相應(yīng)的指令,關(guān)閉連接,等待后發(fā)送下一個請求。

優(yōu)點:使用方便,實現(xiàn)簡單,開發(fā)成本低,無需做過多的更改。

缺點:如果輪詢間隔過長,會導(dǎo)致消息出現(xiàn)延遲,用戶無法及時接收更新的數(shù)據(jù)。如果輪詢時間過短,則會導(dǎo)致查詢請求過多,增加網(wǎng)絡(luò)資源消耗,服務(wù)器易產(chǎn)生峰值請求。

2.2 長輪詢模式(Long-Polling)

又稱服務(wù)端的輪。它是指當(dāng)客戶端通過執(zhí)行網(wǎng)頁中的JS輪詢腳本,經(jīng)由HTTP方式向服務(wù)器端發(fā)送請求,建立連接后,如果服務(wù)器端沒有新的數(shù)據(jù),就會保持連接,不斷地去查詢后臺消息,等待有效的更新,一旦有新消息產(chǎn)生,服務(wù)器就將消息返回給客戶端。客戶端收到響應(yīng)消息后會立即關(guān)閉鏈接,并發(fā)送新的請求,開始下一次新的輪詢。

優(yōu)點:時效性強(qiáng),消息能及時返回客戶端;無消息更新不會頻繁請求,減少了不停地創(chuàng)建、關(guān)閉HTTP請求造成的不必要浪費。

缺點:開發(fā)成本高,實現(xiàn)復(fù)雜,需第三方庫支持;服務(wù)端保持大量連接的維護(hù)開銷大;多個數(shù)據(jù)發(fā)送會耗費大量的服務(wù)器性能;每次產(chǎn)生消息后都需要重新創(chuàng)建連接。

2.3 基于流的模式( Http Streaming )

該模式下,客戶端與服務(wù)器端會持續(xù)保持連接,當(dāng)服務(wù)器端有新的消息更新時,服務(wù)器端就會通過該持續(xù)連接源源不斷的將消息返回給客戶端。該模式與前面的長輪詢模式相似,只是不需要多次建立連接。

優(yōu)點:新的消息可以實時到達(dá)客戶端;客戶端與服務(wù)器端一次建立連接,持續(xù)有效。

缺點:服務(wù)器端需要保持大量連接,及時響應(yīng)后臺的消息更新,開銷較大。

2.4 Server-Sent Events (SSE)

SSE模式與長輪詢類似,區(qū)別在于SSE的每個連接不只發(fā)送一個消息,通常會重用以處理多個消息。當(dāng)客戶端與服務(wù)器端建立連接后,服務(wù)器端就持續(xù)保持該連接到一個有效的消息產(chǎn)生,并將該消息返回給客戶端。此時,先前建立的連接并不關(guān)閉,還可以繼續(xù)用于另一個有效消息的發(fā)送。一旦有新消息準(zhǔn)備好,該連接就會將其發(fā)送回客戶端。

優(yōu)點:基于HTML5標(biāo)準(zhǔn);定義了專用媒體類型text/event-stream;提供了標(biāo)準(zhǔn)JS的客戶端API實現(xiàn);開發(fā)實現(xiàn)簡單;一個連接可發(fā)送多個數(shù)據(jù)。

缺點:服務(wù)器端只能向客戶端單向推送數(shù)據(jù);主流的IE瀏覽器不支持EventSource。

2.5 HTML5 Websocket

WebSocket是一種復(fù)雜的服務(wù)器端雙向傳輸技術(shù)。它基于HTML5標(biāo)準(zhǔn),提供了在客戶端與服務(wù)器端進(jìn)行全雙工通訊的網(wǎng)絡(luò)技術(shù)。客戶端和服務(wù)器端只需要通過握手動作就能迅速建立一條雙向快速通道,兩者就可以隨意向?qū)Ψ桨l(fā)送數(shù)據(jù)。此時,在新的WebSocket連接上的交互就不再是基于HTTP協(xié)議了。該技術(shù)可以用于在兩個方向上快速交互小塊數(shù)據(jù)的應(yīng)用場景中。

優(yōu)點:基于最新的HTML5標(biāo)準(zhǔn);可以實現(xiàn)真正的實時通訊和雙向交互;大量節(jié)約服務(wù)器資源和帶寬。

缺點:客戶端需要支持HTML5;開發(fā)難度較高,需要專門處理WebSocket協(xié)議。

2.6 Flash XMLSocket

該技術(shù)在頁面中內(nèi)嵌一個使用了XMLSocket類的Flash程序。JavaScript通過調(diào)用此Flash程序提供的Socket接口與服務(wù)器端的Socket接口進(jìn)行通信。JavaScript在收到服務(wù)器端以XML格式傳送的信息后可以很容易地控制HTML頁面的顯示。

優(yōu)點:增強(qiáng)了客戶端的處理能力;實現(xiàn)真正的即時而非偽即時通信。

缺點:客戶端必須安裝Flash插件;非HTTP協(xié)議;XMLSocket類不能自動穿過防火墻;需要設(shè)置一個通信端口。

2.7 Comet

Comet是一種基于HTTP長連接、無須在客戶端安裝插件的“服務(wù)器推”技術(shù)。該技術(shù)可使服務(wù)器將更新的信息實時地傳送到客戶端,而無須客戶端發(fā)出請求。目前有長輪詢和Iframe流兩種實現(xiàn)方式。長輪詢是在建立連接以后保持,直到服務(wù)器推送數(shù)據(jù)后再關(guān)閉的方式。Iframe流方式是在頁面中插入一個隱藏的Iframe,利用其src屬性在服務(wù)器和客戶端之間創(chuàng)建一條長鏈接,服務(wù)器向Iframe傳輸數(shù)據(jù),來實時更新頁面。

優(yōu)點:消息即時到達(dá),不發(fā)送無用請求。

缺點:服務(wù)器端維持長連接會增加網(wǎng)絡(luò)開銷。

3 結(jié)語

實時消息技術(shù)在互聯(lián)網(wǎng)中的應(yīng)用越來越廣,涵蓋的內(nèi)容也越來越多,我們在此僅做概略性的介紹。在實際應(yīng)用中,每種業(yè)務(wù)場景都要考慮各方面的細(xì)節(jié),具體問題具體對待,需要大家在實際的開發(fā)應(yīng)用中見仁見智了。

參考文獻(xiàn)

[1]韋伯,帕拉斯泰迪斯,魯濱遜.REST實戰(zhàn)[M].南京:東南大學(xué)出版社,2011.

[2]Darren Cook.Data Push Apps with HTML5 SSE[M].O'Reilly Media,2014.

作者單位

七一三七五部隊 山東省濰坊市 262600

猜你喜歡
頁面
微信群聊總是找不到,打開這個開關(guān)就好了
大狗熊在睡覺
刷新生活的頁面
在本機(jī)中輕松完成常見PDF操作
電腦愛好者(2022年3期)2022-05-30 10:48:04
移動頁面設(shè)計:為老人做設(shè)計
Web安全問答(3)
同一Word文檔 縱橫頁面并存
網(wǎng)站結(jié)構(gòu)在SEO中的研究與應(yīng)用
幾種頁面置換算法的基本原理及實現(xiàn)方法
淺析ASP.NET頁面導(dǎo)航技術(shù)
主站蜘蛛池模板: 一级毛片免费播放视频| 26uuu国产精品视频| 自偷自拍三级全三级视频| 久久精品免费国产大片| 国产精品无码久久久久AV| 国产福利一区视频| 老司机久久精品视频| 精品剧情v国产在线观看| a欧美在线| 国产婬乱a一级毛片多女| 深夜福利视频一区二区| 国产麻豆aⅴ精品无码| 制服丝袜国产精品| 亚洲欧美国产五月天综合| 精品国产成人a在线观看| 99久久国产精品无码| 久无码久无码av无码| 国禁国产you女视频网站| 亚洲第一成人在线| 伊人激情综合网| 国产亚洲一区二区三区在线| 国产精品毛片一区| 久久这里只精品国产99热8| 人人91人人澡人人妻人人爽 | 免费毛片全部不收费的| 国产又色又爽又黄| 国产精品黑色丝袜的老师| 男女精品视频| 91无码人妻精品一区二区蜜桃 | 国产三级韩国三级理| 手机精品福利在线观看| 一级毛片基地| 免费99精品国产自在现线| 欧美狠狠干| 一级毛片在线播放| 精品少妇人妻无码久久| 日日拍夜夜操| 亚洲天堂在线视频| 亚洲 欧美 中文 AⅤ在线视频| 亚洲一区二区三区麻豆| 91探花在线观看国产最新| 91成人试看福利体验区| 福利国产微拍广场一区视频在线| 国产超碰在线观看| 欧美午夜网| 91人妻日韩人妻无码专区精品| a毛片基地免费大全| 欧美视频二区| 77777亚洲午夜久久多人| 亚洲日韩国产精品综合在线观看 | 亚洲swag精品自拍一区| 日本91视频| 免费看一级毛片波多结衣| 91麻豆精品国产91久久久久| 色窝窝免费一区二区三区| 日韩区欧美国产区在线观看| 婷婷激情亚洲| 欧美丝袜高跟鞋一区二区| 手机精品福利在线观看| 国产69精品久久久久孕妇大杂乱| 91精品国产麻豆国产自产在线| 超碰精品无码一区二区| 久久亚洲国产最新网站| 天堂久久久久久中文字幕| 国产91麻豆免费观看| yjizz国产在线视频网| 国产成人亚洲精品色欲AV| 国产精品永久不卡免费视频| 免费看a级毛片| 99性视频| 男人天堂亚洲天堂| 国产麻豆91网在线看| 亚洲三级视频在线观看| 久久天天躁狠狠躁夜夜2020一| www.狠狠| 日本a∨在线观看| 亚洲码一区二区三区| 亚洲国产日韩一区| 成人午夜免费视频| 日韩色图区| 久久久精品久久久久三级| 野花国产精品入口|