国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(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搭建實時通信服務的評論 (共 條)

分享到微博請遵守國家法律
云霄县| 五莲县| 巴林左旗| 民勤县| 绵竹市| 瑞金市| 衡东县| 阳谷县| 肥东县| 体育| 南和县| 连平县| 岳池县| 平塘县| 扶沟县| 客服| 鞍山市| 九龙坡区| 都匀市| 孟津县| 吴桥县| 合川市| 筠连县| 仙居县| 温宿县| 修文县| 和林格尔县| 丹棱县| 牙克石市| 衡水市| 喀喇| 上栗县| 柳林县| 聂荣县| 琼中| 江北区| 鄂伦春自治旗| 泊头市| 义乌市| 抚顺县| 镇坪县|