WebSocket面試題


一、為什么你們項目組中使用WebSocket技術

當我們在處理頁面數據自動更新的時候,在使用js不斷的請求服務器,查看是否有新數據,如果有就獲取到新數據,進行對頁面信息的跟新,但是當頁面長時間沒有更新數據時,這樣就會存在資源浪費的情況,所以才會使用WebSocket來解決。

二、UDP和TCP協議的概念

TCP是事先為所發送的數據開辟出連接好的通道,然后再進行數據發送;而UDP則不為IP提供可靠性、流控或差錯恢復功能。一般來說,TCP對應的是可靠性要求高的應用,而UDP對應的則是可靠性要求低、傳輸經濟的應用。

三、什么是WebSocket?

WebSocket是HTML5一種新的協議,WebSocket是真正實現了全雙工通信的服務器向客戶端推的互聯網技術,是一種在單個TCP連接上進行全雙工通訊協議。

 

四、全雙工通訊協議的概念?

全雙工是通訊傳輸的一個術語。通信允許數據在兩個方向上同時傳輸,他在能力上相當於兩個單工通信方式的結合。全雙工指可以同時進行信號的雙向傳輸。

全雙工是:例如我們使用的手機就是全雙工,在同一時刻兩個用戶可以同時給對方傳送數據

半雙工:例如我們使用的對講機,當A方按住通話按鈕才可以向B方傳送數據,B方也是,在同一時刻只有一個用戶能夠傳送數據(A/用戶都可以傳遞信息,但是不能夠同時傳遞)

單工:例如我們看電視時,我們只能接收對方發送的信息,不能夠給對方傳遞信息;

 

 

五、WebSocket和Socket的區別是什么?

Socket是應用層與TCP/IP協議通信的中間軟件抽象層,它是一組接口。而WebSocket則不同,它是一個完整的應用層協議,包含一套標准的API。

 

六、Http與WebSocket的區別?

http協議是短鏈接,因為請求之后,都會關閉連接,下次重新請求數據,需要再次打開連接。WebSocket協議是一種長連接,只需要通過一次請求來初始化鏈接,然后所有的請求和響應都是通過這個TCP鏈接進行通信。

 

七、WebSocket中的常用注解有哪些?

@ServerEndpoint 類似與servlet中的 RequestMapping

@OnOpen類似與servlet中的 init()初始化

@OnClose類似與servlet中的destroy() 銷毀

@OnMessage類似於servlet中的service請求 (意思就是發送數據的方式 @doPost() / @doGet() 組合)*


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM