Netty

  1. BIO:同步阻塞。服務器實現模式爲 一個鏈接一個線程,也就是當客戶端有請求鏈接的時候就須要啓動一個線程進行處理,若是這個鏈接不作任何事情,會形成沒必要要的線程開銷
阻塞:server.accept(),inputStream.read(bytes)
  單線程狀況下只能有一個客戶端
  用線城池能夠用多個客戶端鏈接,每個客戶端使用一個scoket
  進行維護,使用線程池對scoket進行存儲,很是消耗性能
  1. NIO:同步非阻塞。服務器實現模式爲一個請求一個線程,客戶端發送的鏈接請求都會註冊到多路複用器上,多路複用器會輪詢到鏈接有 I/O 請求時才啓動一個線程進行處理
非阻塞關鍵字:ServerSocketChannel,ScoketChannel,Selector,
SelectionKey
相關文章
相關標籤/搜索