五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

使用SpringBoot搭建實時通信服務

2021-10-20 09:20 作者:向上生長之路  | 我要投稿

在軟件開發(fā)過程中,經(jīng)常需要獲取服務器端數(shù)據(jù)來展示給用戶,對于數(shù)據(jù)的及時性有要求的場景,我們可能會采用長輪詢等方式,來以一定的頻率向服務器發(fā)起請求拉取數(shù)據(jù),輪詢方式會持續(xù)占用系統(tǒng)資源,效率較低,那么有沒有一種解決方案,能做到服務器端有數(shù)據(jù)更新,及時通知客戶端呢?通過使用websocket技術,我們可以做到客戶端與服務器端的全雙工通信,兩端都可以實時的發(fā)送數(shù)據(jù)給對方~,下面就給大家介紹下SpringBoot中怎么整合websocket技術

  • SpringBoot版本 2.4.5

使用方式

1.修改SpringBoot工程中的pom.xml配置,增加websocket的依賴


2.修改SpringBoot工程啟動類,添加@EnableWebSocket注解來啟用websocket能力支持


3.添加websocket配置
完整代碼參考:https://github.com/netbuffer/spring-boot-websocket-demo/blob/master/src/main/java/cn/netbuffer/springboot/websocket/demo/config/SpringWebSocketConfig.java


4.實現(xiàn)自己的消息處理器
完整代碼參考:https://github.com/netbuffer/spring-boot-websocket-demo/blob/master/src/main/java/cn/netbuffer/springboot/websocket/demo/websocket/handler/TextHandler.java


5.建立Controller控制器層映射方法,來測試主動推送消息到客戶端
完整代碼參考:https://github.com/netbuffer/spring-boot-websocket-demo/blob/master/src/main/java/cn/netbuffer/springboot/websocket/demo/controller/WebsocketController.java


6.編寫客戶端html代碼驗證websocket能力
完整代碼參考:https://github.com/netbuffer/UItest/blob/master/websocket/index.html


運行效果

啟動SpringBoot工程,再使用chrome瀏覽器訪問客戶端頁面,打開開發(fā)者工具



觀察開發(fā)者工具控制臺已經(jīng)打印出連接的日志,服務器端控制臺也已經(jīng)打印出連接日志
現(xiàn)在通過客戶端頁面發(fā)送一些消息,來查看服務器端日志是否有輸出~



觀察結果可以看到服務器端已經(jīng)收到對應內(nèi)容,并寫回響應消息給客戶端了

再測試下服務器主動推送消息給客戶端的效果,使用Postman工具訪問我們編寫的接口來發(fā)送一些消息給客戶端,注意session字符串可以從服務器日志打印中找到



觀察結果可以看到服務器已經(jīng)能實時推送相應的內(nèi)容給客戶端了~

完整測試工程參考:https://github.com/netbuffer/spring-boot-websocket-demo

使用SpringBoot搭建實時通信服務的評論 (共 條)

分享到微博請遵守國家法律
岗巴县| 平阳县| 获嘉县| 安福县| 河北省| 沾益县| 屏东市| 铁力市| 清流县| 乐陵市| 孟村| 西乌珠穆沁旗| 蕉岭县| 西盟| 宜春市| 三穗县| 莱州市| 濉溪县| 遵义县| 镇江市| 普格县| 正定县| 雅江县| 武城县| 濮阳县| 吉木萨尔县| 客服| 景洪市| 诸暨市| 方城县| 大田县| 桐庐县| 襄汾县| 湖南省| 南川市| 沈丘县| 西和县| 鄂托克旗| 元阳县| 蓬安县| 北海市|