伺服器併發策略

2021-06-20 14:11:00 字數 595 閱讀 5886

一、簡介

從本質上講,所有到達伺服器的請求都封裝在ip包中,位於網絡卡的接收緩衝區中,這時候web伺服器軟體要做的事情就是不斷地讀取這些請求,然後進行處理,並將結果寫到傳送緩衝區,這其中包含了一系列的i/o操作和cpu計算,而設計乙個併發策略的目的,就是讓i/o操作和cpu計算盡量重疊進行。

二、乙個程序處理乙個連線,非阻塞i/o

1、fork模式:主程序負責accept()來自客戶端的連線,一旦接收連線,便馬上fork()乙個新的worker程序來處理,處理結束後,程序便被銷毀。

2、prefork模式:這種方式由主程序預先建立一定數量的子程序,每個子程序可以處理多個請求。父程序只負責負責子程序,動態維護乙個程序池。

三、乙個執行緒處理乙個連線,非阻塞i/o

這種方式允許在乙個程序中通過多個執行緒來處理多個連線,其中每個執行緒處理乙個連線。apache的worker多路處理模組便採用這種方式。

四、乙個程序處理多個連線,非阻塞i/o

它需要應用多路i/o就緒通知。通常將處理多個連線的程序稱為worker程序或服務程序。nginx 對應 :worker_processes 2;

lighttpd 對應:server.max-worker =2

併發伺服器

併發伺服器 伺服器使用多個控制線程,同時處理多個客戶請求。有關併發執行的細節取決於所用作業系統。但其思路很簡單 併發伺服器程式被分為主程式 執行緒 和控制代碼兩部分,主程式只接受來自客戶的連線請求,並為該客戶建立乙個控制線程 每乙個控制線程只與乙個客戶互動,並執行控制代碼程式。當處理完乙個客戶後,該...

併發伺服器

1.select優點 跨平台缺點 對於單個程序的檔案描述符的數量存在最大限制linux一般為1024,32位機器位1024,64位機器位2048 2 對socket進行掃瞄時是一次掃瞄的,即採用輪詢的方法,效率較低 3.遍歷列表浪費cpu時間 poll優點 解決了套接字的上限問題 缺點 效率跟sel...

網路策略伺服器

technet 庫 windows server windows server 2008 r2 und windows server 2008 按類別提供的 windows server 內容 按類別提供的 windows server 2008 r2 內容 已安裝的 windows server ...