1、前言

  昨天總結(jié)了一下Linux下網(wǎng)絡編程“驚群”現(xiàn)象,給出Nginx處理驚群的方法,使用互斥鎖。為例發(fā)揮多核的優(yōu)勢,目前常見的網(wǎng)絡編程模型就是多進程或多線程,根據(jù)accpet的位置,分為如下場景:

 ?。?)單進程或線程創(chuàng)建socket,并進行l(wèi)isten和accept,接收到連接后創(chuàng)建進程和線程處理連接

  (2)單進程或線程創(chuàng)建socket,并進行l(wèi)isten,預先創(chuàng)建好多個工作進程或線程accept()在同一個服務器套接字、

大數(shù)據(jù)培訓,云培訓,數(shù)據(jù)挖掘培訓,云計算培訓,高端軟件開發(fā)培訓,項目經(jīng)理培訓                      大數(shù)據(jù)培訓,云培訓,數(shù)據(jù)挖掘培訓,云計算培訓,高端軟件開發(fā)培訓,項目經(jīng)理培訓

這兩種模型解充分發(fā)揮了多核CPU的優(yōu)勢,雖然可以做到線程和CPU核綁定,但都會存在:

  • 單一listener工作進程胡線程在高速的連接接入處理時會成為瓶頸

  • 多個線程之間競爭獲取服務套接字

  • 緩存行跳躍

  • 很難做到CPU之間的負載均衡

  • 隨著核數(shù)的擴展,性能并沒有隨著提升

參考:

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式