java websocket修改为同步_服务端向客户端推送消息技术之websocket的介绍
生活随笔
收集整理的這篇文章主要介紹了
java websocket修改为同步_服务端向客户端推送消息技术之websocket的介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
websocket的介紹
在講解WebSocket前,我們先來看看下面這種場景,在HTTP協議下,怎么實現。
需求:
在網站中,要實現簡單的聊天,這種情況怎么實現呢?如下圖:
?
當發送私信的時候,如果要求實時同步的話,可以先讓消息入庫,等對方登陸之后,查詢顯示即可。如下圖:
?
可是現在,需要實時消息,怎么辦?
最簡單的一種方式,就是寫個定時任務,輪詢查詢去。如下圖:
?
雖然這樣可以實現,我們可以看到,每隔一定時間,就會去調用服務器接口,查詢一次。這樣很浪費系統資源的。我們來看看HTTP協議:
?
如上圖:
客戶端和服務器建立連接后,發送請求數據給服務器;
服務器接收請求后,處理完成并更加請求返回響應的呼作為回應;
客戶端得到數據后,與服務器斷開連接。
這就是HTTP三次握手。是基于TCP/IP的
從上圖中,我們可以看到,http協議是典型的拉取方式,短鏈接的;是客戶端向服務器拉取數據的。如果,客戶端不發送請求,那么服務器的數據就不會主動給客戶的的。
我們的需求是要實現即時聊天的。因為要即時,所以,不能考客戶端拉取數據,就需要使用服務器主動給客戶端推送數據的。就需要客戶端和服務器實時保持著聯系,也就是長連接。這種情況下,我們應該使用哪種技術來實現呢?實現方式有很多種,這里我們就用websocket來實現。
總結
以上是生活随笔為你收集整理的java websocket修改为同步_服务端向客户端推送消息技术之websocket的介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tensorflow2 unet加载自己
- 下一篇: Web前端大作业 HTML+CSS+JS