亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

B/S(Web)實時通訊解決方案分享

2019-11-19 16:54:55
字體:
來源:轉載
供稿:網友

B/S的實時通訊實現起來比較麻煩,因為http協議是無狀態的,導致一些實時消息通知和聊天等功能比較難以實現,本文主要簡述幾種自己之前常用的幾種方式。

1、傳統的HTTP協議是無狀態的

傳統的HTTP協議是無狀態的,每次請求(request)都要由客戶端(如 瀏覽器)主動發起,服務端進行處理后返回response結果,而服務端很難主動向客戶端發送數據,多個用戶進行實時的交流也比較困難,比如聊天系統。

2、目前比較流量的實時通訊方式

輪詢

條件:任何Web端

客戶端定時向服務器發送Ajax請求,服務器接到請求后馬上返回響應信息并關閉連接。

長輪詢

條件:任何Web端

客戶端向服務器發送Ajax請求,服務器接到請求后hold住連接,直到有新消息才返回響應信息并關閉連接,客戶端處理完響應信息后再向服務器發送新的請求。

Flash socket

條件:需要安裝Flash插件

在頁面中內嵌入一個使用了Socket類的 Flash 程序JavaScript通過調用此Flash程序提供的Socket接口與服務器端的Socket接口進行通信,JavaScript在收到服務器端傳送的信息后控制頁面的顯示。

Web Socket

條件:支持H5 Web socket

WebSocket protocol 是HTML5一種新的協議。它實現了瀏覽器與服務器全雙工通信(full-duple)。一開始的握手需要借助HTTP請求完成。

3、B/S 實時通訊輪詢方式

3.1傳統輪詢

客戶端定時向服務器發送Ajax請求,服務器接到請求后馬上返回響應信息并關閉連接。

缺點:耗費資源,耗費流量 。根據用戶窗口數量,請求次數成倍的增加。

3.2 傳統長輪詢

客戶端向服務器發送Ajax請求,服務器接到請求后hold住鏈接,直到有新消息才返回響應信息并關閉連接,客戶端處理完響應信息后再向服務器發送新的請求。

由于瀏覽器同時只能有一定數量的鏈接同時hold,所有這種方式如果窗口打開多個,就會導致后面打開的窗口一直等待前面hold的鏈接。

3.3傳統長輪詢+ActiveMq

ActiveMq的方式相比傳統的查詢數據庫有一定的優勢,這樣減少了多次查詢數據庫的問題,效率也會有所提升。但是這種方式每個用戶的每個窗口都會有個訂閱和鏈接,這樣導致ActiveMq服務器的鏈接數會隨著用戶的增加而增加,最后導致鏈接數沾滿。

4、ASP.NETSignalR

很明顯輪詢的方式并不是最好的解決方式,當然web socket是一種很好的實現方式,但是編程起來比較麻煩,由于lz是做.net開發,所以選擇了ASP.NET SignalR。而且SignalR會兼容各種瀏覽器,如果瀏覽器支持web socket,則用web socket方式,如果不支持則用長輪詢的方式實現。

ASP.NET SignalR 是為 ASP.NET 開發人員提供的一個庫,可以簡化開發人員將實時 Web 功能添加到應用程序的過程。實時 Web 功能是指這樣一種功能:當所連接的客戶端變得可用時服務器代碼可以立即向其推送內容,而不是讓服務器等待客戶端請求新的數據。即你有信息了再來通知我,而不是我傻乎乎的每次跑來問你。

http://signalr.net/

4.1 SignalR 簡單編程

SignalR的配置以及應用詳情可以參數官方文檔,這里只做簡單的發送消息和接收消息的示例。

1、客戶端發送消息至服務端

2、服務端發送消息至客戶端

在服務端向客戶端發送消息時可以選擇三種發送方式

1、All:所有頁面,比如:實時股票信息。

  Clients.All.xx();

2、Client:單個頁面,比如:聊天系統。

  Clients.Client("connectionId").xx();

3、Group:組,比如:同一個用戶所有頁面收到通知。

  Clients.Group("groupName").xx();

更多關于SignalR的詳情介紹,和實現群聊功能,可以參考另一篇 應用并實現群聊功能 開源代碼

4.2 SignalR+數據庫

這種方式解決了用戶多個窗口不能收到消息的問題,而且數據庫的刷新頻率只會有一個線程刷新,并不會隨著用戶的增加而增加,從而大大的減小了數據庫的刷新頻率。

4.3SignalR+ActiveMq(最終解決方式)

這種方式既解決了鏈接數的問題,也同時解決了用戶多個窗口不能收到消息的問題,而且用了ActiveMq也不用去實時刷新數據庫。

結語

以上是lz在開發中應用的多種B/S實時通信的解決方案,望對各位有所幫助,本文原創,歡迎拍磚和推薦。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美国产另类| 668精品在线视频| 久久亚洲精品国产亚洲老地址| 狠狠躁夜夜躁人人躁婷婷91| 色综合视频网站| 国产精品中文字幕在线观看| 欧洲成人免费视频| 午夜精品一区二区三区在线视| 精品久久久久久电影| 91av成人在线| 欧美在线视频观看| 国产丝袜精品视频| 欧美激情高清视频| 国产成人一区二区三区小说| 国产第一区电影| 亚洲日本中文字幕| 国内精品模特av私拍在线观看| 亚洲精品久久视频| 97超级碰碰碰| 欧美大学生性色视频| 欧美丰满老妇厨房牲生活| 国产精选久久久久久| 国产日韩一区在线| 97视频免费在线观看| 中文字幕亚洲欧美一区二区三区| 一本色道久久88亚洲综合88| 国外成人免费在线播放| 亚洲新声在线观看| 国产在线播放91| 日韩成人在线免费观看| 中文字幕日韩欧美在线| 欧美亚洲国产成人精品| 久久五月天综合| 国产美女精品视频免费观看| 亚洲精品在线观看www| 亚洲一区久久久| 91久久精品久久国产性色也91| 亚洲一级一级97网| 久久综合久中文字幕青草| 日本一区二区不卡| 国产精品旅馆在线| 亚洲第一中文字幕| 国产女精品视频网站免费| 国产在线精品自拍| 欧美最顶级丰满的aⅴ艳星| 91丝袜美腿美女视频网站| 亚洲美女免费精品视频在线观看| 国产不卡精品视男人的天堂| 国外成人在线视频| 久久成人人人人精品欧| 亚洲综合在线中文字幕| 亚洲视频专区在线| 国产精品一区二区久久久| 日韩在线激情视频| 久久久精品影院| 亚洲最新视频在线| 国产成人精品视频在线| 成人免费观看49www在线观看| 亚洲自拍在线观看| 日本亚洲欧洲色| 疯狂蹂躏欧美一区二区精品| 久久精品在线播放| 国产精品网站视频| 琪琪第一精品导航| 18久久久久久| 久久成人亚洲精品| 一本色道久久88亚洲综合88| 国产成人涩涩涩视频在线观看| 久久国产视频网站| 国产精品夫妻激情| 久久99国产精品久久久久久久久| 亚洲一区二区三区成人在线视频精品| 亚洲国产精彩中文乱码av在线播放| 亚洲精品中文字幕女同| 欧美成人在线免费| 日韩免费观看av| 亚洲国产精品成人va在线观看| 欧美在线观看www| 国产精品va在线播放| 欧美高清视频在线观看| 性视频1819p久久| 国产精品久久久久久久久久三级| 亚洲国产精品久久久久秋霞蜜臀| 亚洲成人激情视频| 久久久www成人免费精品张筱雨| 国精产品一区一区三区有限在线| 欧美性猛交99久久久久99按摩| 91po在线观看91精品国产性色| 亚洲精品456在线播放狼人| 亚洲品质视频自拍网| 亚洲国产欧美一区二区丝袜黑人| 国产精品福利在线观看网址| 久久69精品久久久久久国产越南| 成人黄色av网| 欧美大片大片在线播放| 97婷婷大伊香蕉精品视频| 欧美一区二区色| 久久久免费精品| 日韩精品在线第一页| 日韩一区二区av| 国产精品久久久久久久久免费看| 亚洲国产高清自拍| 欧美日韩国产成人在线| 成人精品福利视频| 国产精品∨欧美精品v日韩精品| 精品丝袜一区二区三区| 亚洲人永久免费| www.xxxx欧美| 97精品欧美一区二区三区| 久久久国产精彩视频美女艺术照福利| 国产精品青青在线观看爽香蕉| 欧美精品18videos性欧美| 亚洲码在线观看| 91精品视频在线播放| 国产精品色悠悠| 欧美与黑人午夜性猛交久久久| 亚洲精品白浆高清久久久久久| 日本精品免费一区二区三区| 国产精品稀缺呦系列在线| 亚洲精品视频网上网址在线观看| 欧美中文字幕在线播放| 久久好看免费视频| 精品国产1区2区| 亚洲欧美日韩高清| 久久久久久久久久久91| 91国内免费在线视频| 不用播放器成人网| 亚洲最新在线视频| 成人黄色网免费| 亚洲www永久成人夜色| 中文字幕日韩av综合精品| 久久久久久一区二区三区| 欧美一级大片在线观看| 久久躁日日躁aaaaxxxx| 欧美激情在线观看| 这里只有精品在线播放| 日本一欧美一欧美一亚洲视频| 欧美人在线视频| 欧美成人免费一级人片100| 久久久久久欧美| 热门国产精品亚洲第一区在线| 亚洲免费电影一区| 久久福利视频网| 国内外成人免费激情在线视频| 国内精品在线一区| 欧美激情一区二区三区久久久| 久久久久久久亚洲精品| 色综合视频网站| 亚洲精品91美女久久久久久久| 国产综合视频在线观看| 久久精品成人欧美大片古装| 91精品国产综合久久香蕉922| 久久99精品视频一区97| 自拍偷拍亚洲一区| 精品亚洲夜色av98在线观看| 国产成人福利网站| 欧美另类在线观看| 国产一区二区激情| 亚洲欧美另类自拍| 日韩免费观看高清| 欧美激情精品久久久久| 青青草国产精品一区二区| 午夜精品久久久99热福利| 日韩欧美亚洲范冰冰与中字|