2012-06-20 57 views
0

我有Magento安裝程序來管理VPS上的7個不同的店面。每個店面都有一個獨特的IP,而他們當然共享相同的數據庫,只有一些產品在某些網站上。大約一個星期前,其中一個店面變得非常緩慢。我在說10+秒的加載時間。奇怪的是,所有其他網站在大約4秒鐘仍然嗡嗡作響。但是週期性地,他們的表現也會下降。我的主機說他們沒有對服務器做任何事情,他們糾正了一些問題,但即使他們不能確定發生了什麼。我減少了日誌清理之間的時間(儘管我認爲它不需要)。我必須補充一點,我有超過100個靜態頁面,而我們的htaccess相當大(215k),因爲有一些數字或重定向和阻止的IP。我認爲這是一個magento問題,而不是服務器問題,但我不知道爲什麼它只是這個店面。這有沒有發生過其他人?或者有什麼我可以忽略的?只有1 Magento Storefront Slow

+0

你能得到像New Relic監控安裝的東西嗎?這可能有助於解決問題是否出現在Magento,主機或數據庫中 – CCBlackburn

回答

6

你需要做一些分析找出罪魁禍首。 Magento甚至提供了一些開箱即用的選項。
首先,進入系統>配置>開發者,並將您當前的公共IP添加到Developer Client Restriction Allowed IP。

然後切換到有問題的商店的商店視圖範圍,並在調試部分打開分析器顯示。

接下來,您需要啓用分析器來收集數據。這將進一步減慢網站(所有商店)的速度,但由於它會爲您提供需要修復的數據,因此這種臨時折衷有望值得。

在Magento中集成了兩個分析器。一個用於PHP代碼,另一個用於DB SQL查詢。

PHP探查
打開的index.php文件在Magento的根目錄下,當你啓用後重新加載頁面刪除調用

Varien_Profiler::enable(); 

行前面的註釋字符那個調用你應該在每個頁面底部看到一長串探查器定時器,告訴你所花費的時間和每個探查器部分的調用次數。

DB探查
打開文件應用的/ etc /那個local.xml<profiler>節點添加到連接配置。

<config> 
    <global> 
     <resources> 
      <default_setup> 
       <connection> 
        <host><![CDATA[localhost]]></host> 
        <username><![CDATA[xxxx]]></username> 
        <password><![CDATA[xxx]]></password> 
        <dbname><![CDATA[xxx]]></dbname> 
        <active>1</active> 
        <!-- This is the line you need to add: --> 
        <profiler>true</profiler> 
       </connection> 
      </default_setup> 
     </resources> 
    </global> 
</config> 

後您刷新配置緩存,你也應該看到,在頁面的底部,該頁面請求過程中的一些數據庫查詢統計,最慢的查詢。

希望這會給你一些見解,什麼是減慢商店,併爲你提供一些數據如何解決它。
記住關閉代碼探查,則SQL事件探查探查輸出你完成之後。僅僅調整輸出結果只會讓分析人員愉快地收集數據並放慢整個網站的速度。

編輯:探查器收集的數據可用於創建可排序的電子表格和添加自定義計時器。這可能會有幫助,但超出了本文的範圍。熟悉Magento的開發人員可以自行創建這些自定義模塊。