千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > WebSocket怎么實(shí)現(xiàn)數(shù)據(jù)庫(kù)表增加一條數(shù)據(jù)然后主動(dòng)推送給客戶端?

WebSocket怎么實(shí)現(xiàn)數(shù)據(jù)庫(kù)表增加一條數(shù)據(jù)然后主動(dòng)推送給客戶端?

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-13 09:40:37 1697161237

一、WebSocket怎么實(shí)現(xiàn)數(shù)據(jù)庫(kù)表增加一條數(shù)據(jù)然后主動(dòng)推送給客戶端

websocket是一個(gè)全雙工通信協(xié)議,所以只要客戶端和服務(wù)端實(shí)現(xiàn)了相關(guān)邏輯就好了。

現(xiàn)在大部分瀏覽器都支持websocket協(xié)議,寫起來(lái)也很簡(jiǎn)單,用一些現(xiàn)成的js庫(kù)也可以。

服務(wù)器端寫起來(lái)也不算麻煩。

檢測(cè)到數(shù)據(jù)庫(kù)變更就推送一條消息即可。

另一個(gè)問題是如何檢測(cè)到mysql數(shù)據(jù)庫(kù)的變更。

我覺得大概有這樣幾種思路:

代碼實(shí)現(xiàn),有修改數(shù)據(jù)庫(kù)操作的地方,增加一些推送消息的邏輯;加入攔截器,進(jìn)行切面處理,避免第1種到處加入代碼;使用中間件,如canal,實(shí)時(shí)監(jiān)聽數(shù)據(jù)庫(kù)的修改。

延伸閱讀:

二、數(shù)據(jù)實(shí)時(shí)推送的實(shí)現(xiàn)方式和應(yīng)用場(chǎng)景

1.輪詢:

客戶端通過代碼定時(shí)向服務(wù)器發(fā)送AJAX請(qǐng)求,服務(wù)器接收請(qǐng)求并返回響應(yīng)信息。

優(yōu)點(diǎn):代碼相對(duì)簡(jiǎn)單,適用于小型應(yīng)用。

缺點(diǎn):在服務(wù)器數(shù)據(jù)沒有更新時(shí),會(huì)造成請(qǐng)求重復(fù)數(shù)據(jù),請(qǐng)求無(wú)用,浪費(fèi)帶寬和服務(wù)器資源。

2.長(zhǎng)連接:

在頁(yè)面中嵌入一個(gè)隱藏的iframe,將這個(gè)隱藏的iframe的屬性設(shè)置為一個(gè)長(zhǎng)連接的請(qǐng)求或者xrh請(qǐng)求,服務(wù)器通過這種方式往客戶端輸入數(shù)據(jù)。

優(yōu)點(diǎn):數(shù)據(jù)實(shí)時(shí)刷新,請(qǐng)求不會(huì)浪費(fèi),管理較簡(jiǎn)潔。

缺點(diǎn):長(zhǎng)時(shí)間維護(hù)保持一個(gè)長(zhǎng)連接會(huì)增加服務(wù)器開銷。

3.webSocket

websocket是HTML5開始提供的一種客戶端與服務(wù)器之間進(jìn)行通訊的網(wǎng)絡(luò)技術(shù),通過這種方式可以實(shí)現(xiàn)客戶端和服務(wù)器的長(zhǎng)連接,雙向?qū)崟r(shí)通訊。

優(yōu)點(diǎn):減少資源消耗;實(shí)時(shí)推送不用等待客戶端的請(qǐng)求;減少通信量;

缺點(diǎn):少部分瀏覽器不支持,不同瀏覽器支持的程度和方式都不同。?

應(yīng)用場(chǎng)景:聊天室、智慧大屏、消息提醒、股票k線圖監(jiān)控等。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
Mycat分表分庫(kù)的原理是什么?

一、Mycat分表分庫(kù)的原理1、數(shù)據(jù)分片(Sharding)Mycat將數(shù)據(jù)按照某種規(guī)則(如基于哈希、范圍、一致性哈希等)進(jìn)行分片。每個(gè)分片包含數(shù)據(jù)的一...詳情>>

2023-10-13 11:31:32
Access數(shù)據(jù)庫(kù)怎樣免費(fèi)下載?

一、Access數(shù)據(jù)庫(kù)免費(fèi)下載的方法1、Microsoft官方網(wǎng)站訪問Microsoft官方網(wǎng)站,進(jìn)入”O(jiān)ffice”或”Access”的頁(yè)面。Microsoft通常提供試用版本或...詳情>>

2023-10-13 11:29:41
千萬(wàn)級(jí)用戶的實(shí)時(shí)問答網(wǎng)站用什么語(yǔ)言,數(shù)據(jù)庫(kù)和服務(wù)器有什么要求?

一、千萬(wàn)級(jí)用戶的實(shí)時(shí)問答網(wǎng)站用什么語(yǔ)言,數(shù)據(jù)庫(kù)和服務(wù)器有什么要求語(yǔ)言方面,可以選擇像 Java、Python、Go 等支持高并發(fā)的編程語(yǔ)言。其中,Ja...詳情>>

2023-10-13 11:20:16
Ecoinvent數(shù)據(jù)庫(kù)中,Cut-off、Conseq和APOS三種類型的數(shù)據(jù)使用區(qū)別在哪兒?

一、Ecoinvent數(shù)據(jù)庫(kù)中,Cut-off、Conseq和APOS三種類型的數(shù)據(jù)使用區(qū)別跟系統(tǒng)邊界/分配方法有關(guān),之前看到過有人推薦使用cut-off就可以了。附以...詳情>>

2023-10-13 11:08:36
為什么二級(jí)封鎖協(xié)議不能保證可重復(fù)讀,一級(jí)封鎖協(xié)議不能保證可重復(fù)讀和讀臟數(shù)據(jù)?

一、為什么二級(jí)封鎖協(xié)議不能保證可重復(fù)讀排它鎖又叫寫鎖,事務(wù)A對(duì)數(shù)據(jù)D加了排它鎖,其它任何事務(wù)都不能再對(duì)數(shù)據(jù)D加共享鎖或者排它鎖。也就是說A...詳情>>

2023-10-13 11:01:05
快速通道
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
亚洲欧美日韩中文无线码 | 亚洲国产午夜精品理论 | 在线人成日本视频 | 日韩欧美国产专区v | 亚洲日韩欧美国产 | 亚洲人成在线观看网站不卡 |