国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

深入理解apahce的工作模式perfork、worker

2024-09-01 13:45:15
字體:
來源:轉載
供稿:網友
prefork模式使用多個子進程,每個子進程只有一個線程。每個進程在某個確定的時間只能維持一個連接。在大多數平臺上,Prefork MPM在效率上要比Worker MPM要高,但是內存使用大得多。prefork的無線程設計在某些情況下將比worker更有優勢:它可以使用那些沒有處理好線程安全的第三方模塊,并 且對于那些線程調試困難的平臺而言,它也更容易調試一些。

worker模式使用多個子進程,每個子進程有多個線程。每個線程在某個確定的時間只能維持一個連接。通常來說,在一個高流量的HTTP服務器 上,Worker MPM是個比較好的選擇,因為Worker MPM的內存使用比Prefork MPM要低得多。但worker MPM也由不完善的地方,如果一個線程崩潰,整個進程就會連同其所有線程一起”死掉”.由于線程共享內存空間,所以一個程序在運行時必須被系統識別為”每 個線程都是安全的”。

prefork方式速度要稍高于worker,然而它需要的cpu和memory資源也稍多于woker。

查看現使用的工作模式:
apachectl -l

兩種模式配置文件+說明:
perfork模式:

復制代碼 代碼如下:


<IfModule mpm_prefork_module>
ServerLimit 2000
#連接數大于256需設置此項。20000是ServerLimit這個參數的最大值
StartServers 5
#初始化時建立的子進程數。prefork默認為5
MinSpareServers 10
#最小的空閑進程數
MaxSpareServers 15
#最大的空閑進程數
MaxClients 1000
#最大并發客戶端連接數上限
MaxRequestsPerChild 10000
#控制服務器殺死舊進程產生新進程的頻率
#將MaxRequestsPerChild設置成非零值有兩個好處:
#1.可以防止(偶然的)內存泄漏無限進行,從而耗盡內存。
#2.給進程一個有限壽命,從而有助于當服務器負載減輕的時候減少活動進程的數量。
</IfModule>



worker模式:

復制代碼 代碼如下:


<IfModule mpm_worker_module>
StartServers 3
#初始化時建立的子進程數
MaxClients 2000
#最大并行處理數量。子進程最大數量=MaxClients/ThreadsPerChild
ServerLimit 25
#只有在你需要將MaxClients和ThreadsPerChild設置成需要超過默認值16個子進程的時候才需要使用這個指令。不要將該指令的值設置的比MaxClients 和ThreadsPerChild需要的子進程數量高。
MinSpareThreads 50
#最少空線程數
MaxSpareThreads 200
#最大空閑線程數
ThreadLimit 200
#這個指令設置了每個子進程可配置的線程數ThreadsPerChild上限,該指令的值應當和ThreadsPerChild可能達到的最大值保持一致。
ThreadsPerChild 100
#子進程建立的服務線程數
MaxRequestsPerChild 0
#設置每個子進程在其生存期內允許伺服的最大請求數量。到達MaxRequestsPerChild的限制后,子進程將會結束。如果MaxRequestsPerChild為"0",子進程將永遠不會結束。
</IfModule>



工作模式修改方法:
重新編譯指定工作模式(默認為prefork)

復制代碼 代碼如下:


./configure --with-mpm=worker



注意:
對工作模式相關參數做出更改后,必須關閉apache服務后重新啟動服務方可。
直接利用restart啟動將是無效的。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沭阳县| 彭阳县| 赤城县| 汶上县| 新邵县| 德昌县| 桃江县| 上杭县| 宾川县| 扎囊县| 社旗县| 仲巴县| 嘉鱼县| 子长县| 马关县| 望江县| 百色市| 呼伦贝尔市| 彭泽县| 布拖县| 鄂伦春自治旗| 天等县| 韶关市| 玉门市| 南郑县| 武定县| 凯里市| 桂平市| 宜阳县| 通道| 娄底市| 利津县| 哈巴河县| 广安市| 壤塘县| 新疆| 家居| 扶绥县| 外汇| 科技| 泊头市|