早上,我被告之公司的一個門戶的網站,打開網頁速度很慢。於是一步步排查網站打開慢的原因。
現象是,輸入網址後,浏覽器無任何顯示內容,一片空白,狀態顯示,正在鏈接IP地址,過5-6秒後才開始顯示網站標題,頁面內容。整個過程約需要8-10秒鐘。
先查看服務器,無延時或者丟包,firebug工具查看顯示打鏈接首頁就像要5-6秒,而且還被中斷,其它裝飾用的圖片,體積很少但仍需超長時間打開。
查問機房是不是帶寬網絡出問題了,告之沒有問題,日志文件是很大了,清了日志再重啟,問題仍沒有好轉。
最後在網上嘗試一下別人的說法,一個線程的限制數量也會影響apache的反應速度,於是找到以下內容
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>
ServerLimit和MaxClients都是過小了,不適應門戶網站的訪問量增大,於是全改為1000,再重啟apache,再測試打開速度變為4秒,速度已大大提高。