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

首頁 > 網站 > Apache > 正文

Wins2003系統中Apache性能優化方法

2024-08-27 18:25:04
字體:
來源:轉載
供稿:網友

為了滿足網站高負荷的要求,在調整Apache參數時發現進程經常占用內存過多導致當機。經過不斷的優化和修改參數組合,終于讓服務器穩定 下來,可以滿足大量訪問的考驗和應用要求。筆者總結了調試過程中的問題和解決辦法如下,以供有類似需求的網管員參考(系統環境為Windows Server 2003和apache2.2.8):

1、http-mpm.conf設置

Apache的線程數控制文件為http-mpm.conf,在conf/exrtra目錄下面,要使該配置文件起作用需要在httpd.conf 中將 Include conf/extra/httpd-mpm.conf前#去掉,以使得http-mpm.conf生效。

在Windows系統中,起作用的是Winnt mpm段,

復制代碼 代碼如下:
<IfModule mpm_winnt_module>
ThreadsPerChild 150
MaxRequestsPerChild 0
</IfModule>


以上是缺省的配置,一般情況下夠用了,但負荷較大的網站就需要修改了,否則訪問網站會變慢或沒有響應。實際設置中可以根據apache-status查看apache實時連接狀態,查看其中線程占用數目情況來進行相應的調整,我的服務器最后設置如下:

復制代碼 代碼如下:
<IfModule mpm_winnt_module>
ThreadsPerChild 350
ThreadLimit 350
MaxRequestsPerChild 10000
</IfModule>


其中ThreadLimit是占用系統線程數限制,修改后會在apache-status中直接看到效果,就是對應的最大的可用線程數(如圖所示)。

MaxRequestsPerChild是進程的最大的請求數目,既指網站收到請求的緩存數。設置太小了會影響服務器性能,因為會占用較多cpu時 間,太大了則會占用內存資源。一般大型的網站文件個數都是成千上萬,所以管理員應該根據網站情況自己設定,只要不為0(無限制)就可以,以防止內存溢出。

ThreadsPerChlid是Apache進程的子線程數,意思是服務器開了這么多的線程數來等待響應客戶端請求。該參數需要根據 apache-status實時的監控情況來調節,太大會導致內存增長過快,直到服務器當機,太小會導致服務器連接隊列在高峰期時占滿,從而導致網站連接 慢。同時我們應該修改另一個配置文件httpd-default.php中的超時設置來配合這個參數。

2、httpd-default.conf設置

在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。我們需要調節以下參數:

Timeout 15

該參數為連接超時,缺省的300秒顯然太大,縮小該參數就會減少同時連接數,即用戶實際占用的線程數,這樣就可以起到配合上面ThreadsPerChlid參數的作用。

KeepAlive On

該參數為是否保持活連接,目前網站中一個頁面一般會包含多個文件,所以相應用戶訪問時會有多個請求,因此開啟可以提高服務器性能。

MaxKeepAliveRequests 50

該參數為最大的活連接請求數,可以根據網頁實際包含的文件數目自行調節。

KeepAliveTimeout 5

該參數為活連接的超時時間,一般只要設置成小于Timeout即可。

這樣設置后,Apache在響應請求和防止惡意攻擊方面就取得較為平衡的效果,當然由于內存回收機制和進程管理不同,Windows下長期運行 Apache還是不如Unix穩定,因此我們可以讓Apache在每天凌晨訪問人數少時自動重啟一次,以回收資源。用Windows自帶的計劃任務就可以 簡單的實現。這樣,我們就使Apache在Windows平臺下像Unix一樣長期穩定的提供服務了。

windows下apache及mysql定時自動重啟&服務器定時自動重啟

有時候覺得,服務器運行時間過長,造成服務器內存等壓力過大。因此,不用重新啟動服務器的情況下,完成apache和mysql的內存釋放,是非常有益處的(把重啟時間設置在訪問量最低的)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博罗县| 宣武区| 泰州市| 当阳市| 长沙县| 福建省| 桦南县| 四川省| 彭山县| 溧阳市| 渝北区| 金寨县| 雷州市| 昌江| 文成县| 河南省| 灵川县| 宜昌市| 兴城市| 台北市| 龙海市| 庆元县| 宁晋县| 三门峡市| 河北区| 仁化县| 新田县| 库伦旗| 中阳县| 新绛县| 阿拉善右旗| 固安县| 乐清市| 木兰县| 林西县| 达尔| 黑龙江省| 汉源县| 伊通| 肥东县| 嘉禾县|