摘抄 apache工作模式詳解

2021-07-16 10:01:00 字數 1652 閱讀 4278

伺服器優化配置

apache的主要優勢就是能更好地支援多處理器,在編譯時通過使用--with-mpm選項來決定apache的工作模式。如果知道當前的apache使用的工作機制,則可以通過httpd -l命令列出apache的所有模組,從而就可以知道其工作方式。

(1)prefork。如果httpd -l列出了prefork.c,則需要對下面的這段引數進行配置: 

startservers 5      #啟動apache時啟動的httpd程序個數  

minspareservers 5   #伺服器保持的最小空閒程序數  

maxspareservers 10  #伺服器保持的最大空閒程序數  

maxclients 150      #最大併發連線數 

maxrequestsperchild 1000#每個子程序被請求服務多少次後被kill掉。0表示不限制,推薦設定為1000 

在該工作模式下,伺服器啟動後將啟動5個httpd程序(如果加上父程序,一共6個,通過ps -ax|grephttpd命令可以看到)。當有使用者請求連線時,apache會使用乙個空閒程序為該連線服務,同時父程序會fork乙個子程序。直到記憶體中的空閒程序達到maxspareservers。該模式是為了相容一些舊版本的程式。

(2)worker。如果httpd -l列出worker.c,則需要對下面的內容進行配置:

startservers 2      #啟動apache時啟動的httpd程序個數  

maxclients 150      #最大併發連線數  

minsparethreads 25  #伺服器保持的最小空閒執行緒數  

maxsparethreads 75  #伺服器保持的最大空閒執行緒數  

threadsperchild 25  #每個子程序產生的執行緒數  

maxrequestsperchild 0   #每個子程序被請求服務

多少次後被kill掉。0表示不限制,推薦設定為1000  

該模式由執行緒來監聽客戶的連線。當有新客戶連線時,由其中的乙個空閒執行緒接受連線。伺服器在啟動後會啟動兩個程序,每個程序產生的執行緒數是固定的(由threadsperchild決定),因此啟動時有50個執行緒。當50個執行緒不夠用時,伺服器自動fork乙個程序,再產生25個執行緒。

(3)perchild。如果httpd -l列出perchild.c,則需要對下面的內容進行配置:

numservers 5            #伺服器啟動時啟動的子程序數  

startthreads 5          #每個子程序啟動時啟動的執行緒數  

minsparethreads 5       #記憶體中的最小空閒執行緒數  

maxsparethreads 10      #記憶體中的最大空閒執行緒數  

maxthreadsperchild 2000     #每個執行緒最多被請

求多少次後退出。0表示不受限制  

maxrequestsperchild 10000   #每個子程序服務多

少次後被重新fork,0表示不受限制 

該模式下,子程序的數量是固定的,執行緒數不受限制。當客戶端連線到伺服器時,由空閒的執行緒提供服務。如果空閒的執行緒數不夠,子程序就會自動產生執行緒來為新的連線服務。該模式用於多站點伺服器。 

摘抄 apache工作模式詳解

伺服器優化配置 apache的主要優勢就是能更好地支援多處理器,在編譯時通過使用 with mpm選項來決定apache的工作模式。如果知道當前的apache使用的工作機制,則可以通過httpd l命令列出apache的所有模組,從而就可以知道其工作方式。1 prefork。如果httpd l列出了...

Apache 工作模式詳解

apache 工作模式詳解 apache 2.x 支援插入式並行處理模組,稱為多路處理模組 mpm 在編譯apache時必須選擇也只能選擇乙個mpm,對類unix系統,有幾個不同的mpm可供選擇,它們會影響到apache的速度和可伸縮性。apache啟動會通過指定ip監聽pid埠 會開通過主程序開啟...

Apache工作模式

手工編譯安裝apache 解包 安裝手工編譯軟體包 yum install gcc gcc c pcre devel pcre zlib devel make y 執行configure make編譯 make make install 安裝完成之後建立一條軟鏈結 編輯主配置檔案 其餘配置與普通ap...