【Netty專欄】五、Netty線程模型

一、常見的線程模型:

  • 傳統阻塞IO線程模型
  • Reactor模式

二、各線程模型介紹:

1、傳統阻塞IO線程模型

傳統阻塞IO線程模型

 

模型特點:

(1)採用阻塞IO模型獲取輸入的數據

(2) 每個連接都需要獨立的線程完成數據讀取、處理和結果的響應。

模型缺點:

(1)每個連接都需要開啓一個線程,當併發數量很大,就會創建大量線程,佔用系統很大的資源。

(2)當連接創建後,如果當前線程沒有數據可讀,就會阻塞在read操作,造成線程資源浪費。

 

2、Reactor模式

2.1 什麼是Reactor模式?

基於IO複用模型,多個連接共用一個阻塞對象,應用程序只需要一個阻塞對象等待,無需阻塞等待所有連接。當某個連接有數據可以處理時,線程從阻塞狀態返回。基於線程池複用線程資源,將連接完成後的業務處理分配給線程池處理。簡單講,IO複用結合線程池,就是Reactor模式的設計思想。

2.2 Reactor模型圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章