<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          SpringBoot+Netty+Websocket整合案例(3分鐘實現(xiàn)一個基本的聊天功...

          共 1858字,需瀏覽 4分鐘

           ·

          2022-11-04 03:45

          之前使用Springboot整合了websocket,實現(xiàn)了一個后端向前端推送信息的基本小案例,這篇文章主要是增加了一個新的框架就是Netty,實現(xiàn)一個高性能的websocket服務(wù)器,并結(jié)合前端代碼,實現(xiàn)一個基本的聊天功能。你可以根據(jù)自己的業(yè)務(wù)需求進行更改。

          這里假設(shè)你已經(jīng)了解了Netty和websocket的相關(guān)知識,僅僅是想通過Springboot來整合他們。根據(jù)之前大家的需求,代碼已經(jīng)上傳到了github上。在文末給出。

          廢話不多說,直接看步驟代碼。

          一、環(huán)境搭建

          7f01526dd3619184ef4851664c093220.webp

          其實對于jar包版本的選擇,不一定按照我的來,只需要接近即可,最好的辦法就是直接去maven網(wǎng)站上去查看,哪一個版本的使用率最高,說明可靠性等等就是最好的。Idea我已經(jīng)破解,需要的私聊我。

          二、整合開發(fā)

          建立一個項目,名字叫做SpringbootNettyWebSocket

          1、添加依賴

          60ebb1b54ea5c25ac82ee772ed5e3766.webp

          2、在application.properties文件修改端口號

          一句話:server.port=8081

          3、新建service包,創(chuàng)建NettyServer類

          a086735784c087509d8946a75287d2fd.webp

          這個類的代碼是模板代碼,最核心的就是ch.pipeline().addLast(new MyWebSocketHandler()),其他的如果你熟悉netty的話,可以根據(jù)自己的需求配置即可,如果不熟悉直接拿過來用。

          4、在service包下創(chuàng)建MyWebSocketHandler核心處理類

          7b21476febcc2e99b361a09fc582783c.webp

          在這個類里面我們首先建立了一個channelGroup,每當有客戶端連接的時候,就添加到channelGroup里面,我們可以發(fā)送消息給固定的人,也可以群發(fā)消息。

          注意:有人說這個功能沒有實現(xiàn)后臺主動推送的功能。其實代碼寫到這一步,你可以使用定時器來實現(xiàn)定時推送的功能,另外為了解決跨域的問題,你也可以使用nginx配置反向代理。我這里只是一個基本的功能,沒有使用nginx。

          5、客戶端代碼

          461b750befa80b1bd6760e13dd1c89c3.webp7e3d7a74ae8ab0bad660025360d826f6.webp

          現(xiàn)在一切就緒,打開我們的服務(wù)器,然后再打開我們的網(wǎng)頁客戶端。看一下效果吧

          737390b96145d7f18d3aab09d159b382.webp

          同樣的服務(wù)器也是同樣的效果。這里就不粘貼演示了。OK,這就是一個最基本的功能,所有的測試均在我自己的電腦上實現(xiàn),如有問題還請指正

                

          作者: 愚公要移山

          www.toutiao.com/i6775018273139327492/

                  

          彩推薦:

          網(wǎng)關(guān)系統(tǒng)就該這么設(shè)計(萬能通用),穩(wěn)的一批!
          漏洞警告:SpringBoot 該如何預(yù)防 XSS 攻擊 ??

          丟棄 HttpClient 了,這款輕量級框架更強!

          SpringBoot接入輕量級分布式日志框架GrayLog實戰(zhàn)!

          現(xiàn)在的公司都這么卷了?自家這么牛逼的統(tǒng)一管理平臺開源了!

          JWT 實現(xiàn)登錄認證 + Token 自動續(xù)期方案,這才是正確的使用姿勢!


          瀏覽 42
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  精品七区 | 五月天伊人大香蕉 | 久操伊人网 | 欧美熟女一区二区 | 草肉肉XXXXHD劉亦菲 |