apache修改并發(fā)線程數(shù)值

1族沃、啟用MPM模塊配置文件

Apace安裝目錄/conf/extra/httpd-mpm.conf误辑,這個文件主要用于進(jìn)行MPM模塊的相關(guān)配置。

2尤泽、在默認(rèn)情況下欣簇,Apache的MPM模塊配置文件并沒有啟用,因此我們需要在httpd.conf文件中啟用該配置文件坯约,如下所示:

Server-pool management (MPM specific)

Include conf/extra/httpd-mpm.conf
去掉 Include conf/extra/httpd-mpm.conf 前面的注釋符號"#"(如果前面有#號的話)

3熊咽、在啟動MPM模塊配置文件后,我們就可以使用文本編輯器打開httpd-mpm.conf配置文件闹丐,在該配置文件中有許多<IfModule>配置節(jié)點(diǎn)横殴,如下圖所示:

4、 此時卿拴,我們就需要根據(jù)當(dāng)前Apache服務(wù)器所使用的MPM模塊(也就是Apache的工作模式)衫仑,來修改對應(yīng)<IfModule>節(jié)點(diǎn)下的參數(shù)配置:

五、mpm_winnt模塊的配置

由于mpm_winnt模塊只會創(chuàng)建1個子進(jìn)程堕花,因此這里對單個子進(jìn)程的參數(shù)設(shè)置就相當(dāng)于對整個Apache的參數(shù)設(shè)置文狱。

<IfModule mpm_winnt_module>
ThreadsPerChild 150 #推薦設(shè)置:小型網(wǎng)站=1000 中型網(wǎng)站=1000~2000 大型網(wǎng)站=2000~3500
MaxRequestsPerChild 3000 #推薦設(shè)置:小型網(wǎng)站=10000 中型或大型網(wǎng)站=20000~100000
</IfModule>
ThreadsPerChild 這個參數(shù)用于設(shè)置每個進(jìn)程的線程數(shù), 子進(jìn)程在啟動時建立這些線程后就不再建立新的線程了。一方面因?yàn)閙pm_winnt不能啟動多個進(jìn)程缘挽,所以這個數(shù)值要足夠大瞄崇,以便可以處理可能的請求高峰; 另一方面該參數(shù)以服務(wù)器的響應(yīng)速度為準(zhǔn)的呻粹,數(shù)目太大的反而會變慢,因此需要綜合均衡一個合理的數(shù)值苏研。

mpm_winnt工作模式下等浊,ThreadsPerChild的默認(rèn)值是64,最大值是1920摹蘑,這里建議設(shè)置為100-500之間筹燕,服務(wù)器性能高的話值大一些,反之值小一些衅鹿。

MaxRequestsPerChild 這個參數(shù)表示每個子進(jìn)程能夠處理的最大請求數(shù)庄萎,即同時間內(nèi)子進(jìn)程數(shù)目,設(shè)置為零表示不限制塘安。

mpm_winnt工作模式下糠涛,MaxRequestsPerChild的默認(rèn)值就是0,官方參考手冊中不建議設(shè)置為0兼犯,主要基于下面兩點(diǎn)考慮:

可以防止內(nèi)存泄漏(偶然的)無限進(jìn)行忍捡,從而耗盡內(nèi)存;
給進(jìn)程一個有限壽命,從而有助于當(dāng)服務(wù)器負(fù)載減輕的時候減少活動進(jìn)程的數(shù)量切黔。
六砸脊、 mpm_perfork和mpm_worker模塊的配置
1、mpm_perfork模塊

<IfModule mpm_prefork_module>
StartServers 5 #推薦設(shè)置:小型網(wǎng)站=默認(rèn) 中型網(wǎng)站=20~50 大型網(wǎng)站=50~100
MinSpareServers 5 #推薦設(shè)置:與StartServers保持一致
MaxSpareServers 10 #推薦設(shè)置:小型網(wǎng)站=20 中型網(wǎng)站=30~80 大型網(wǎng)站=80~120
MaxClients 150 #推薦設(shè)置:小型網(wǎng)站=500 中型網(wǎng)站=500~1500 大型型網(wǎng)站=1500~3000
MaxRequestsPerChild 0 #推薦設(shè)置:小型網(wǎng)站=10000 中型或大型網(wǎng)站=10000~500000

此外纬霞,還需額外設(shè)置ServerLimit參數(shù)凌埂,該參數(shù)最好與MaxClients的值保持一致。

</IfModule>
2诗芜、mpm_worker模塊

<IfModule mpm_worker_module>
StartServers 2 #推薦設(shè)置:小型網(wǎng)站=默認(rèn) 中型網(wǎng)站=3~5 大型網(wǎng)站=5~10
MaxClients 150 #推薦設(shè)置:小型網(wǎng)站=500 中型網(wǎng)站=500~1500 大型網(wǎng)站=1500~3000
MinSpareThreads 25 #推薦設(shè)置:小型網(wǎng)站=默認(rèn) 中型網(wǎng)站=50~100 大型網(wǎng)站=100~200
MaxSpareThreads 75 #推薦設(shè)置:小型網(wǎng)站=默認(rèn) 中型網(wǎng)站=80~160 大型網(wǎng)站=200~400
ThreadsPerChild 25 #推薦設(shè)置:小型網(wǎng)站=默認(rèn) 中型網(wǎng)站=50~100 大型網(wǎng)站=100~200
MaxRequestsPerChild 0 #推薦設(shè)置:小型網(wǎng)站=10000 中型或大型網(wǎng)站=10000~50000

此外瞳抓,如果MaxClients/ThreadsPerChild大于16,還需額外設(shè)置ServerLimit參數(shù)伏恐,ServerLimit必須大于等于 MaxClients/ThreadsPerChild的值孩哑。

</IfModule>
StartServers 啟動Apache時創(chuàng)建的子進(jìn)程數(shù)。

MinSpareServers 處于空閑狀態(tài)的最小子進(jìn)程數(shù)翠桦。所謂空閑子進(jìn)程是指沒有正在處理請求的子進(jìn)程横蜒,如果當(dāng)前空閑子進(jìn)程數(shù)少于MinSpareServers,那么Apache將以最大每秒一個的速度產(chǎn)生新的子進(jìn)程销凑,只有在非常繁忙機(jī)器上才需要調(diào)整這個參數(shù)丛晌,此值不宜過大。

MaxSpareServers 處于空閑狀態(tài)的最大子進(jìn)程數(shù)斗幼。只有在非常繁忙機(jī)器上才需要調(diào)整這個參數(shù)澎蛛,此值不宜過大,如果你將該指令的值設(shè)置為比MinSpareServers小孟岛,Apache將會自動將其修改成MinSpareServers+1瓶竭。

MaxClients 允許同時連接的最大請求數(shù)量。任何超過MaxClients限制的請求都將進(jìn)入等待隊(duì)列渠羞,直到達(dá)到ListenBacklog指令限制的最大值為止斤贰。

對于非線程型的MPM(mpm_prefork),MaxClients表示可以用于處理客戶端請求的最大子進(jìn)程數(shù)量次询,默認(rèn)值是256荧恍,要增大這個值,你必須同時增大ServerLimit屯吊。
對于線程型或者混合型的MPM(mpm_beos或mpm_worker)送巡,MaxClients表示可以用于處理客戶端請求的最大線程數(shù)量,線程型的mpm_beos的默認(rèn)值是50盒卸,對于混合型的MPM默認(rèn)值是16(ServerLimit)乘以25(ThreadsPerChild)的結(jié)果骗爆。因此要將MaxClients增加到超過16個進(jìn)程才能提供的時候,你必須同時增加ServerLimit的值蔽介。
MinSpareThreads 處于空閑狀態(tài)的最小線程數(shù)摘投。不同的MPM對這個指令的處理是不一樣的,mpm_worker的默認(rèn)值是75虹蓄,這個MPM將基于整個服務(wù)器監(jiān)視空閑線程數(shù)犀呼,如果服務(wù)器中總的空閑線程數(shù)太少,子進(jìn)程將產(chǎn)生新的空閑線程薇组。

MaxSpareThreads 處于空閑狀態(tài)的最大線程數(shù)外臂。不同的MPM對這個指令的處理是不一樣的,mpm_worker的默認(rèn)值是250律胀,這個MPM將基于整個服務(wù)器監(jiān)視空閑線程數(shù)宋光,如果服務(wù)器中總的空閑線程數(shù)太多,子進(jìn)程將殺死多余的空閑線程炭菌。

七跃须、關(guān)于Apache的ServerLimit
ServerLimit表示Apache允許創(chuàng)建的最大進(jìn)程數(shù)。 Apache在編譯時內(nèi)部有一個硬限制ServerLimit 20000(mpm_prefork模塊為ServerLimit 200000)娃兽,你不能超越這個限制菇民。在設(shè)置ServerLimit時需要注意:如果將ServerLimit設(shè)置成一個高出實(shí)際需要許多的值,將會有過多的共享內(nèi)存被分配投储,如果將ServerLimit和MaxClients設(shè)置成超過服務(wù)器的處理能力第练,Apache可能無法啟動,或者系統(tǒng)將變得不穩(wěn)定玛荞。

八娇掏、其他注意事項(xiàng)
在配置相關(guān)參數(shù)時,請先保證服務(wù)器具備足夠的硬件性能(CPU勋眯、內(nèi)存等)婴梧。 如果發(fā)現(xiàn)調(diào)整MPM模塊參數(shù)后下梢,服務(wù)器的內(nèi)存占用不斷增加(甚至滿載),可能是程序中出現(xiàn)了內(nèi)存泄露塞蹭,遇到這種情況請調(diào)低參數(shù)MaxRequestsPerChild的值以降低內(nèi)存泄露帶來的影響孽江,然后盡快找出程序中的問題所在。
————————————————
版權(quán)聲明:本文為CSDN博主「幕塵楓」的原創(chuàng)文章番电,遵循CC 4.0 BY-SA版權(quán)協(xié)議岗屏,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq15577969/article/details/109702961

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末漱办,一起剝皮案震驚了整個濱河市这刷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌娩井,老刑警劉巖暇屋,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異洞辣,居然都是意外死亡率碾,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門屋彪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來所宰,“玉大人,你說我怎么就攤上這事畜挥∽兄啵” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵蟹但,是天一觀的道長躯泰。 經(jīng)常有香客問我,道長华糖,這世上最難降的妖魔是什么麦向? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮客叉,結(jié)果婚禮上诵竭,老公的妹妹穿的比我還像新娘。我一直安慰自己兼搏,他們只是感情好卵慰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著佛呻,像睡著了一般裳朋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上吓著,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天鲤嫡,我揣著相機(jī)與錄音送挑,去河邊找鬼。 笑死暖眼,一個胖子當(dāng)著我的面吹牛惕耕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播罢荡,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼赡突,長吁一口氣:“原來是場噩夢啊……” “哼对扶!你這毒婦竟也來了区赵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤浪南,失蹤者是張志新(化名)和其女友劉穎笼才,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體络凿,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡骡送,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了絮记。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片摔踱。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖怨愤,靈堂內(nèi)的尸體忽然破棺而出派敷,到底是詐尸還是另有隱情,我是刑警寧澤撰洗,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布篮愉,位于F島的核電站,受9級特大地震影響差导,放射性物質(zhì)發(fā)生泄漏试躏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一设褐、第九天 我趴在偏房一處隱蔽的房頂上張望颠蕴。 院中可真熱鬧,春花似錦助析、人聲如沸裁替。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽弱判。三九已至,卻和暖如春锥惋,著一層夾襖步出監(jiān)牢的瞬間昌腰,已是汗流浹背开伏。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留遭商,地道東北人固灵。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像劫流,于是被迫代替她去往敵國和親巫玻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容