2012-04-25 46 views
0

使用Apache Bench,我網站的主頁每秒只能處理0.42個請求。一個簡單的phpinfo()頁面可以處理每秒31.99個請求,這對於這樣一個簡單的腳本來說似乎非常慢。顯然,我的主頁處理0.42請求是不能接受的。Apache基準真的很糟糕,有什麼建議嗎?

我在Windows Server 2008上運行Apache 2.2.4 GB RAM,2.4 GHz Intel Xeon CPU。

該網站建立在帶有MySQL數據庫的PHP CMS表達式引擎上。表達式引擎具有真正積極的頁面緩存,因此主頁的所有意圖和目的都是靜態的(有一些處理正在進行,但最終只是將靜態文件存儲在硬盤上)。我也啓用了SQL緩存(分配了200 MB)。當頁面沒有被緩存時,在主頁上有84個查詢,這似乎不太瘋狂。

任何人有任何明顯的想法,我怎麼能讓這件事情運行更好?某種php.ini,my.ini或httpd.conf設置我應該檢查出來嗎?

+0

你運行Apache Bench的確切命令行是什麼? – 2012-04-25 20:55:41

+6

84 SQL查詢_single request_ ?! OO在_every_請求? – KingCrunch 2012-04-25 20:58:39

+0

@Dagon ab http:// localhost/ – LOLapalooza 2012-04-25 20:58:42

回答

0

您可以使用反向代理,如Varnish,因爲最快的應用程序是應用程序,不會執行。特別是ESI-Support非常酷,可以加速高度動態的頁面。

+0

謝謝,我會研究。由於該頁面被表達式引擎靜態緩存了30分鐘,所以84個查詢僅每30分鐘執行一次。這就是爲什麼這對我來說如此令人困惑。 – LOLapalooza 2012-04-25 21:06:03

+0

但是它通過EE的前端控制器進行緩存 - 在剪出緩存文件之前,仍然會進行大量處理。 – symcbean 2012-04-25 22:45:00

0

這很差。在我坐的機器上,使用ab -c 30 -n 1000 http://localhost/phpinfo.php可以達到42頁/秒,這是一個更爲基本的機器,它也在做很多其他的工作。它雖然在運行Linux;)

你確定瓶頸是PHP嗎?如果是這樣,那麼嘗試使用opcode cache。除此之外,這是通常的調整過程。

在主頁上有84個查詢,這似乎不太瘋狂。

OMG!也許不在你的星球上。如果您期待任何流量,那麼您應該查看ESI幀。

相關問題