douglas c. schmidt, carlos o』ryan, michael kircher, i***n pyarali, and frank buschmann
1.傳統的乙個執行緒select(io),多個執行緒(worker)處理模型的缺點:
a.io執行緒收到訊息後,需要動態分配記憶體,將請求放在該記憶體中,然後放入乙個佇列,多個worker對這個佇列進行互斥的操作,即master/worker模型
b.三個主要缺點:動態記憶體分配,worker對佇列的互斥操作,io與worker之間的切換引起延遲以及cpu cache的失效
如果作業系統能夠很好地支援非同步io,那麼使用非同步io是最簡單的!但是,遺憾,大多數作業系統支援不好,因此,採用了leader-follower模型
該模型如下:
假設有n個執行緒,那麼其中乙個執行緒為leader,該執行緒監聽網路,發現連線後負責處理該連線,當該執行緒處理乙個連線時,該執行緒成為follower,其他的空閒follower通過競爭成為新的leader,這樣的好處是避免了執行緒切換帶來的開銷。
Leader Follower執行緒模型
io執行緒模型一直在演化,由最開始的單執行緒模型,到bio方式的單執行緒接受請求執行緒池執行緒具體處理單個請求的讀寫事件,再到nio的單執行緒接受請求執行緒池裡面的單個執行緒可以處理不同請求的讀寫事件,乙個字沒有最快,只有更快。最近發現還有個leader follower執行緒模型,其的出現是為了解...
Leader Follower 程序池設計思路
看了 url 的分析文章 url 之後,覺得裡面的圖非常好地描述了 apache 的結構。也嘗試用 visio 畫一下 url 的結構。對圖中各個部分的說明 1.masterserver 通過 fork 建立 processmanager processpool 作為 processmanager ...
共模差模阻抗
特性阻抗 差分阻抗含義 特性阻抗 是根據輸入阻抗計算的出的平均值。輸入阻抗 是線纜實際量測的阻抗值。差分阻抗 發射訊號可正負交替又稱為平衡阻抗。共模阻抗 導體走正編織或地線走負的訊號。目前用於同軸線或帶地線的cable。又稱不平衡阻抗。特性阻抗 假設一根均勻電纜無限延伸,在發射端的在某一頻率下的阻抗...