精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

SpringBoot生產(chǎn)級WebSocket集群實踐,支持10萬連接!

開發(fā) 前端
當(dāng)前WebSocket實現(xiàn)分散在在各個服務(wù)中,與業(yè)務(wù)系統(tǒng)強(qiáng)耦合,如果有其他業(yè)務(wù)需要集成WebSocket,面臨著重復(fù)開發(fā)的窘境,浪費成本、效率低下。

1、問題背景

智慧門診系統(tǒng)旨在從一定程度上解決患者面臨的三長一短(掛號、看病、取藥時間長,醫(yī)生問診時間短)的問題。實現(xiàn)“診前、診中、診后”實時智能一體化,整合完善醫(yī)院工作流程。圍繞門診看病的各個環(huán)節(jié),讓患者全程手機(jī)有提醒,讓患者少排隊、少跑腿、看病更簡單,獲得全流程的陪伴服務(wù)從而有效提升就醫(yī)體驗。

系統(tǒng)通過接收醫(yī)院第三方系統(tǒng)推送的門診數(shù)據(jù),再結(jié)合業(yè)務(wù)服務(wù)處理后主動推送到前端,從而實時的將數(shù)據(jù)同步給患者手機(jī)。之所以沒有采用傳統(tǒng)的前端輪訓(xùn)方案,主要是在當(dāng)前業(yè)務(wù)場景下存在時效性不足,資源浪費等問題。但與此同時也有代價的,相比于Http的無狀態(tài)通信,服務(wù)端主動推送是有狀態(tài)協(xié)議的,客戶端連接服務(wù)器時只和集群中一個節(jié)點連接,數(shù)據(jù)傳輸過程中也只與這一節(jié)點通信,在集群多臺服務(wù)器環(huán)境下,我們就出現(xiàn)了服務(wù)端部分消息推送丟失的現(xiàn)象。

當(dāng)前架構(gòu)圖如下:

圖片圖片

2、問題分析和整體思路

客戶端和服務(wù)端每次建立連接時候,會創(chuàng)建有狀態(tài)的會話Session,服務(wù)器得保存維持連接的Session。客戶端每次只能和集群服務(wù)器其中的一個服務(wù)器連接,后續(xù)也是和該服務(wù)器進(jìn)行數(shù)據(jù)傳輸。因此集群的問題,應(yīng)該考慮Session的問題,客戶端成功連接服務(wù)器之后,其他服務(wù)器也知道客戶端連接成功。

可以使用Nginx負(fù)載均衡的ip hash算法,客戶端每次都是請求同一個服務(wù)器,客戶端的session都保存在該服務(wù)器上,而后續(xù)請求都是請求該服務(wù)器,都能獲取到session,就不存在分布式session問題了。websocket相對http來說,可以由服務(wù)端主動推動消息給客戶端,如果接收消息的服務(wù)端和發(fā)送消息消息的服務(wù)端不是同一個服務(wù)端,發(fā)送消息的服務(wù)端無法找到接收消息對應(yīng)的session,即兩個session不處于同一個服務(wù)端,也就無法推送消息。

解決問題的方法是將所有消息的發(fā)送方和接收方都處于同一個服務(wù)器下,而消息發(fā)送方和接收方都是不確定的,顯然是無法實現(xiàn)的。將消息的發(fā)送方和接收方都處于同一個服務(wù)器下才能發(fā)送消息,那么可以轉(zhuǎn)換一下思路,可以將消息以消息廣播的方式通知給所有的服務(wù)器,可以使用消息中間件發(fā)布訂閱模式,消息脫離了服務(wù)器的限制,通過發(fā)送到中間件,再發(fā)送給訂閱的服務(wù)器,類似廣播一樣,只要訂閱了消息,都能接收到消息的通知。

3、解決方案

WebSocket協(xié)議是基于TCP的一種新的網(wǎng)絡(luò)協(xié)議,是一個應(yīng)用層協(xié)議,是 HTML5 提供的一種在單個 TCP 連接上進(jìn)行全雙工通訊的協(xié)議,與 TCP 一樣,客戶端和服務(wù)器都可以隨時向?qū)Ψ桨l(fā)送數(shù)據(jù),而不用像 HTTP請求 - 應(yīng)答”通信模式。于是,服務(wù)器就可以變得更加“主動”了。一旦后臺有新的數(shù)據(jù),就可以立即“推送”給客戶端,不需要客戶端輪詢,“實時通信”的效率也就提高了。

瀏覽器是一個“沙盒”環(huán)境,有很多的限制,不允許建立 TCP 連接收發(fā)數(shù)據(jù),而WebSocket利用了 HTTP 本身的“協(xié)議升級”特性,“偽裝”成 HTTP,這樣就能繞過瀏覽器沙盒、與服務(wù)器直接建立“TCP 連接”,獲得更多的自由。

一個典型的 Websocket 握手請求如下:

  • 客戶端請求

圖片圖片

  • 服務(wù)器回應(yīng)

圖片圖片

WebSocket是有狀態(tài)的,無法像直接HTTP以集群方式實現(xiàn)負(fù)載均衡,長連接建立后即與服務(wù)端某個節(jié)點保持著會話,因此集群下想要得知會話屬于哪個節(jié)點,有兩種方案,一種是使用類似微服務(wù)的注冊中心來維護(hù)全局的會話映射關(guān)系,一種是使用事件廣播由各節(jié)點自行判斷是否持有會話,兩種方案對比如表所示。

圖片圖片

綜合考慮實現(xiàn)成本與集群規(guī)模,選擇了輕量級的事件廣播方案。實現(xiàn)廣播可以選擇基于RocketMQ的消息廣播、基于Redis的Publish/Subscribe、基于服務(wù)的通知等方案,其優(yōu)缺點對比如表所示。從實時性、實現(xiàn)難易等方面考慮,同時對于持久化高可靠級別并沒有太高要求,最終選擇了Redis。

圖片圖片

改造后架構(gòu)圖如下:

圖片圖片

4、核心實現(xiàn)

基于spring boot建立websocket連接

圖片圖片

基于spring boot接收 websocket消息

圖片圖片

基于spring boot發(fā)布和訂閱Redis消息

圖片圖片

vue前端websocket建立連接、心跳檢測、發(fā)送消息、消息訂閱等

圖片圖片

圖片圖片

圖片圖片

Nginx反向代理配置

圖片圖片

5、性能測試

性能壓測選擇兩臺配置為2核16G的虛擬機(jī),分別作為服務(wù)器和客戶端。壓測時選擇為網(wǎng)關(guān)開放了5個端口,同時建立5個客戶端,每個客戶端使用一個服務(wù)端端口建立起2萬連接,可以同時創(chuàng)建10萬個連接。連接數(shù)與內(nèi)存使用情況如圖所示。

圖片圖片

給10萬個長連接同時發(fā)送一條消息,采用單線程發(fā)送,服務(wù)器發(fā)送完成的平均耗時在10s左右,如圖所示。

圖片圖片

當(dāng)前的性能指標(biāo)已滿足智慧門診的實際業(yè)務(wù)場景,可支持未來的業(yè)務(wù)增長。

6、產(chǎn)品效果

圖片圖片

7、問題和展望

當(dāng)前WebSocket實現(xiàn)分散在在各個服務(wù)中,與業(yè)務(wù)系統(tǒng)強(qiáng)耦合,如果有其他業(yè)務(wù)需要集成WebSocket,面臨著重復(fù)開發(fā)的窘境,浪費成本、效率低下。后續(xù)建議在網(wǎng)關(guān)中擴(kuò)展統(tǒng)一集成管理websocket,能夠具備以下特點:

  1. 集中實現(xiàn)長連接管理和推送能力。統(tǒng)一技術(shù)棧,將長連接作為基礎(chǔ)能力沉淀,便于功能迭代和升級維護(hù)。
  2. 與業(yè)務(wù)解耦。將業(yè)務(wù)邏輯與長連接通信分離,使業(yè)務(wù)系統(tǒng)不再關(guān)心通信細(xì)節(jié),也避免了重復(fù)開發(fā),浪費研發(fā)成本。
  3. 使用簡單。提供HTTP推送通道,方便各種開發(fā)語言的接入。業(yè)務(wù)系統(tǒng)只需要簡單的調(diào)用,就可以實現(xiàn)數(shù)據(jù)推送,提升研發(fā)效率。
  4. 分布式架構(gòu)。實現(xiàn)多節(jié)點的集群,支持水平擴(kuò)展應(yīng)對業(yè)務(wù)增長帶來的挑戰(zhàn);節(jié)點宕機(jī)不影響服務(wù)整體可用性,保證高可靠。
  5. 多端消息同步。允許用戶使用多個瀏覽器或標(biāo)簽頁同時登陸在線,保證消息同步發(fā)送。
  6. 多維度監(jiān)控與報警。自定義監(jiān)控指標(biāo)與現(xiàn)有微服務(wù)監(jiān)控系統(tǒng)打通,出現(xiàn)問題時可及時報警,保證服務(wù)的穩(wěn)定性。
責(zé)任編輯:武曉燕 來源: JAVA日知錄
相關(guān)推薦

2025-01-08 09:43:38

2024-02-02 08:39:53

SpringBootWebSocket集群

2025-11-07 01:00:00

WebSocket集群通信

2025-08-19 17:32:16

2025-07-03 07:06:56

2022-04-06 11:18:46

SpringBoot代碼實踐

2016-02-16 09:36:32

IPv6IPv4網(wǎng)絡(luò)協(xié)議

2010-06-18 10:20:22

SQL Server

2010-07-19 10:59:26

Eclipse 3.6Tomcat 7配置教程

2009-12-03 11:04:54

Visual Stud

2010-07-12 14:37:28

SQL Server2

2010-11-02 16:51:33

DB2連接服務(wù)器

2010-10-22 09:32:01

SQL Server2

2017-03-20 16:13:31

微信紅包高并發(fā)紅包系統(tǒng)

2009-03-04 14:29:32

RTX2008

2011-08-22 14:29:12

PowerDesignOracle

2012-10-12 16:51:38

康普解決方案通信

2009-06-12 11:27:25

2023-12-08 07:59:04

2023-08-09 08:01:00

WebSockett服務(wù)器web
點贊
收藏

51CTO技術(shù)棧公眾號

亚洲校园激情春色| 国产一区二区三区色淫影院| 操91在线视频| 天天做天天干天天操| 麻豆视频在线观看免费| 国产一区二区精品久久| 欧美高清视频在线播放| av av在线| 北岛玲heyzo一区二区| 国产婷婷一区二区| 亚洲free嫩bbb| 日本天堂网在线观看| 伊甸园亚洲一区| 狠狠做深爱婷婷久久综合一区| 中文字幕日韩专区| 性生活免费在线观看| 91久久精品国产91性色69| 国产精品久久精品视| 国产成人亚洲精品无码h在线| 国产高清自拍视频在线观看| 九色精品国产蝌蚪| 欧美日韩国产色站一区二区三区| 国产肉体ⅹxxx137大胆| 欧美成人国产精品高潮| 曰本三级在线| 久久久综合精品| 91精品久久久久久久久不口人| 91成人福利视频| 一道在线中文一区二区三区| 欧美一区二区视频网站| 国产av国片精品| 日本一级在线观看| 国产一区二区精品在线观看| 日韩美女免费观看| 欧美日韩亚洲国产另类| 亚洲欧美tv| 精品国产99国产精品| www午夜视频| a一区二区三区| 亚洲黄网站在线观看| 日韩精品另类天天更新| 日本高清视频免费看| 老司机精品视频在线| 欧美亚洲一级片| 男女视频在线观看网站| 特黄毛片在线观看| 亚洲精品高清在线观看| 亚洲精品tv久久久久久久久| 手机av在线免费观看| 国产在线国偷精品免费看| 日本中文字幕不卡免费| 日本免费一二三区| 性欧美欧美巨大69| 亚洲欧洲免费视频| 特级西西人体4444xxxx| 亚洲福利合集| 欧美一区二区久久久| wwww.国产| 另类图片综合电影| 黑人精品xxx一区| 奇米影视亚洲色图| 1区2区在线观看| 亚洲欧美日韩久久| 91视频免费在线| 青青国产在线视频| 久久精品盗摄| 91成人福利在线| 国产精品自拍视频一区| 午夜精品偷拍| 欧美成aaa人片在线观看蜜臀| 精品无码在线观看| 成人3d精品动漫精品一二三| 日韩大陆毛片av| 激情成人午夜视频| 1024成人网色www| 色噜噜狠狠一区二区三区| 日本激情一区二区| 成人av在线看| 黄色一区三区| 亚洲精品久久久久久无码色欲四季| 四虎精品永久免费| 国产午夜精品无码| 国自产拍在线网站网址视频| av网站免费线看精品| 国产精品播放| 天堂网在线资源| 成人一级黄色片| 免费日韩电影在线观看| 一级黄色香蕉视频| 中国日本在线视频中文字幕| 久久精品人人做人人爽97| 视频二区一区| 黄网页免费在线观看| 一区二区三区加勒比av| 成人短视频在线观看免费| 国产三线在线| 色综合视频一区二区三区高清| 日韩免费高清在线| 一级欧美视频| 日本一区二区三区在线观看| 成人做爽爽免费视频| 国产美女自慰在线观看| 成人综合在线视频| 欧美一区二区影视| 日本不卡三区| 亚洲成av人片一区二区梦乃| 盗摄精品av一区二区三区| 国产精品每日更新| 亚洲成人自拍| 调教视频免费在线观看| 亚洲免费观看在线视频| 男的插女的下面视频| 亚洲国产福利| 欧美一区二区三区在线看| 美女搡bbb又爽又猛又黄www| 欧美新色视频| 久久久精品欧美丰满| 日本在线观看一区| a天堂中文在线官网在线| 亚洲成人免费电影| 久久人妻精品白浆国产 | 激情六月婷婷久久| 国产欧美日本在线| 在线观看免费高清完整| 五月激情综合网| 国产在线精品一区二区中文| 日本天堂影院在线视频| 免费一区二区三区视频导航| 婷婷丁香花五月天| 91精品天堂福利在线观看| 久久久免费观看| 在线观看日本视频| 国产99久久精品| 亚洲精品一区二区三区av| av免费不卡国产观看| 制服丝袜av成人在线看| 亚洲色成人网站www永久四虎 | 麻豆网在线观看| 一本色道a无线码一区v| 国产免费a级片| 99久久激情| 国产精品91在线| 午夜激情在线视频| 日韩精品久久久久久| 444亚洲人体| caoporn国产精品免费视频| 偷拍一区二区三区| 下面一进一出好爽视频| 五月天久久网站| 精品久久久久久国产| 路边理发店露脸熟妇泻火| 日韩精品影院| 亚洲欧美日韩天堂| 欧美第一页在线观看| 性伦欧美刺激片在线观看| 99久久99久久| 免费av网站在线看| 欧美日韩极品在线观看一区| 美女100%无挡| 日一区二区三区| 欧美综合77777色婷婷| 女厕盗摄一区二区三区| 欧美日韩国产欧美日美国产精品| 国产在线综合视频| 青青青爽久久午夜综合久久午夜| 欧美午夜精品久久久久久蜜| 三妻四妾的电影电视剧在线观看| 亚洲韩国欧洲国产日产av| 久久精品视频6| 成人高清视频免费观看| 男人天堂成人网| 欧美9999| 国内伊人久久久久久网站视频 | 天天影视综合色| 国产九一精品| 日韩av理论片| 免费黄网站在线| 这里只有精品99re| 午夜免费激情视频| 不卡视频一二三四| 怡红院av亚洲一区二区三区h| 日本欧美三级| 国产精品美女午夜av| av影片在线看| 91精品国产综合久久香蕉麻豆| 免费看一级一片| 99国内精品久久| 久久精品午夜福利| 999久久久91| 国产66精品久久久久999小说| 成全电影大全在线观看| 亚洲欧美国产高清va在线播| 欧美超碰在线观看| 亚洲精品一二三| 国产熟女高潮一区二区三区| 奇米综合一区二区三区精品视频| 婷婷视频在线播放| 久久99偷拍| 国产精品免费福利| 四虎影院观看视频在线观看 | 99久久影视| 国产成人免费观看| 偷拍中文亚洲欧美动漫| 精品国产一区二区三区久久久狼 | 欧美调教视频| 国产精品视频大全| 第一中文字幕在线| 一本一本久久a久久精品牛牛影视| 91片黄在线观看喷潮| 亚洲成人免费av| 91麻豆制片厂| 成人国产精品免费观看| 久久99爱视频| 99精品国产99久久久久久福利| 天天综合色天天综合色hd| 免费观看久久久久| 人妖欧美1区| 99久久99久久久精品齐齐| 日本黄网站免费| 天天色综合色| 精品久久久久久一区| 国产精品第一国产精品| 97香蕉久久夜色精品国产| 日韩av中文| 亚洲精品国产综合区久久久久久久| 在线视频日韩一区| 欧美黑白配在线| 成人福利网站在线观看11| 福利成人导航| 国产亚洲视频中文字幕视频| 人妻夜夜爽天天爽| 4438x成人网最大色成网站| 五月天激情四射| 亚洲五码中文字幕| 国产精品成人69xxx免费视频| 搞黄网站在线看| 久久综合九色综合久久久精品综合| 亚洲综合日韩欧美| 性欧美xxxx大乳国产app| 国产乱人伦精品一区二区三区| 精品午夜久久| 黄色小网站91| 国产aⅴ精品一区二区四区| 国内精品视频在线| 嫩草在线视频| 在线性视频日韩欧美| 天堂av在线资源| 亚洲国产成人在线播放| 性生活黄色大片| 欧美一区二区观看视频| 97成人在线免费视频| 性欧美一区二区| 一本一本久久| 日韩欧美猛交xxxxx无码| 99精品全国免费观看视频软件| 久久国产精品99久久久久久丝袜| 欧美高清hd| 成人高清在线观看| 国产精久久一区二区| 国产精品日日摸夜夜添夜夜av| 在线视频cao| 欧美亚洲成人xxx| 乱馆动漫1~6集在线观看| 国产69精品久久久久9| 大黄网站在线观看| 高清一区二区三区四区五区| 8x8ⅹ拨牐拨牐拨牐在线观看| 久久99精品久久久久久噜噜| 午夜伦理在线视频| 欧美激情精品久久久久久蜜臀| 影音先锋在线视频| 欧美高清视频在线播放| 国产又色又爽又黄刺激在线视频| 久久影院在线观看| 欧洲黄色一区| 国外视频精品毛片| 麻豆视频在线看| 欧美专区日韩视频| 香蕉成人av| 国产一区二区在线播放| 国产一区二区三区国产精品| 国产日本欧美一区| 国产精品日本一区二区不卡视频| 亚洲在线第一页| 国产一区二区在线视频你懂的| 久久精品一二三区| 精品产国自在拍| 色呦呦网站入口| 国内精品久久久久久久影视麻豆 | 深夜日韩欧美| 超碰97在线人人| 日本一区福利在线| 先锋影音日韩| 一本到12不卡视频在线dvd| 黄色一级大片免费| 亚洲黄网站黄| 亚洲黄色a v| 国产一区日韩二区欧美三区| 88av在线播放| 欧美国产丝袜视频| 亚洲欧美一区二区三区四区五区| 亚洲成人动漫精品| 波多野结衣一本一道| 7777精品伊人久久久大香线蕉完整版 | 男人天堂av片| 丝袜美腿高跟呻吟高潮一区| 国产精品嫩草影院8vv8| 成人免费观看视频| 少妇人妻好深好紧精品无码| 亚洲品质自拍视频网站| 国产微拍精品一区| 一本一本大道香蕉久在线精品 | 久久综合九色综合网站| 日韩欧美一区免费| 乱人伦xxxx国语对白| 蜜桃视频免费观看一区| 波多野结衣办公室双飞| 不卡的av中国片| 大地资源二中文在线影视观看| 国产精品私人影院| 日韩精品一区二区三| 欧美精品欧美精品系列| 亚州视频一区二区三区| 久久久精品免费| 日本综合久久| 国产在线精品一区二区三区》| 小说区亚洲自拍另类图片专区| 18岁网站在线观看| 国产精品99久| 91视频免费看片| 欧美午夜宅男影院在线观看| 国产美女www爽爽爽视频| 国产一区二区三区在线播放免费观看| www免费在线观看| 青青草原一区二区| 亚洲成人黄色| 四虎永久免费网站| 免费高清视频精品| 91网站免费视频| 亚洲777理论| 国产精品系列视频| 伊人久久久久久久久久| 亚洲天堂免费电影| 精品国产综合久久| 亚洲国产精品一区制服丝袜| 久久精品亚洲天堂| 国产精品色婷婷| 日日夜夜综合网| 亚洲激情在线视频| 久久国产精品黑丝| 欧美不卡一区二区| 国产精品久久国产| 天堂在线视频免费| 久久精品电影网站| 91九色综合| 日本一区二区在线| 先锋影音久久久| 人妻丰满熟妇av无码久久洗澡| 一区二区三区精品视频| 中文字幕人妻丝袜乱一区三区| 中文字幕国产精品久久| 天天综合网天天| 九九九久久国产免费| 永久av免费在线观看| 成年人视频免费在线观看| 日韩av中文字幕在线播放| 成人ww免费完整版在线观看| 国产日韩专区在线| 亚洲宅男网av| 那种视频在线观看| 久久亚洲免费视频| 国产99免费视频| 自拍偷拍免费精品| 国产原创一区| 国产伦精品一区二区三毛| 精品黄色免费中文电影在线播放| 国产精品看片资源| 久久国产中文字幕| 欧美性猛交xxxx乱大交91| 亚洲免费高清视频在线| 亚洲av无码国产综合专区| 欧美日韩福利视频| ccyy激情综合| 成人羞羞国产免费网站| 亚洲国产精品v| 国产毛片久久久久| 久久久久一本一区二区青青蜜月| 红杏一区二区三区| 激情五月开心婷婷| 国产精品久久乐| 欧美日韩在线观看视频| 久国产精品视频| 国产精品久久久久7777按摩| jlzzjlzzjlzz亚洲人| 欧美精品在线看| 51社区在线成人免费视频| 波多野结衣综合网| 久久久不卡网国产精品一区| 一本久道久久综合无码中文| 欧美黑人极品猛少妇色xxxxx|