Magento是PHP開源電子商務領域裏首屈一指的。功能完善而且非常強大,但是它的運行速度也是讓人不敢恭維。現在我們來說說如何來加速Magento。
一、Magento Compiler可以提高 25% 到 50% 速度 Magento的性能一直是大家比較關心的焦點,現在Magento最新的版本 1.3.2.2 增加了 Magento Compiler 模塊,根據官方的資料,該模塊可以提高 25% 到 50% 的性能. 我也在測試網站上激活該模塊,感覺效果還是不錯,目前還是beta版本,不過還是推薦使用Magento的朋友試試。 該模塊是從版本 1.3.2.1 開始引入的,如果你的Magento網站已經是1.3.2.1或者更高的版本,該模塊已經預裝好了,可以直接從後臺激活該模塊: System -> Tools -> Compilation (Beta) 然後選 Run Compilation Process, 大約數分鐘之後會出現 Compilation Successfully finished 就可以了。如果使用有問題,只需在同一頁面下按 Disable 按鈕就可以了。 對於使用1.3.2.1之前的版本的朋友,需要升級到最新版本(目前是1.3.2.2)然後再安裝該模塊,我試過在低於1.3.2.1的Magento網站中安裝,安裝後在Tools中找不到Compilation,所以必須升級到1.3.2.1 或更新的版本才能使用該模塊,模塊URL: http://www.magentocommerce.com/extension/1359/magento-compiler 可以用下面 Extension Key 通過Magento Connect 來安裝: magento-core/Mage_Compiler 二、讓MAGENTO加速一倍的辦法 大家可能都發現了,剛裝上MAGENTO的時候,MAGENTO是比烏龜還慢的一個系統。。。 如何解決呢?其實很多的主機都已經默認安裝一個組件:GZIP。 我們就是要通過修改它來提高MAGENTO的運行速度。 關於能提高多少的問題?大家可以在修改之前去mod_gzip tester 看看你MAGENTO網站的速度,然後在修改之後再去看看。。。 現在我們爲MAGENTO開啓GZIP。比較方便的方法是修改根目錄下.htaccess 文件。我們只需要去掉一些註釋就可以了。 在根目錄.htaccess找到和以下代碼相似的代碼,並且把代碼修改得和下面一模一樣。(去掉前面的#符號。) .htaccess代碼
另外還有下面這一段: .htaccess代碼
############################################## enable resulting html compressionphp_flag zlib.output_compression on 好了,大功告成,保存你的文件。刷新MAGENTO的緩存,你會覺得速度快了好多好多。 三、Zend Optimizer Zend Optimizer用優化代碼的方法來提高PHP4.0應用程序的執行速度。實現的原理是對那些在被最終執行之前由運行編譯器(Run-TimeCompiler)產生的代碼進行優化。一般情況下,執行使用ZendOptimizer的PHP程序比不使用的要快40%到100%。這意味着網站的訪問者可以更快的瀏覽網頁,從而完成更多的事務,創造更好的客戶滿意度。更快的反應同時也意味着可以節省硬件投資,並增強網站所提供的服務。所以,使用ZendOptimizer,就等於提高了電子商務的盈利能力。ZendOptimizer能給PHP用戶帶來很多益處,特別是那些運營網站的人。快速運行PHP程序可以顯著降低服務器的CPU負載,並可以減少一半的反應時間,也就是從訪問者點擊鏈接到服務器開始讀取頁面之間的時間。 四、站點優化 magento的網站實在是太慢了,想了好多辦法,參考了好多資料,做了很多測試,總結一下大概的步驟: 1、壓縮js,css代碼,如果有必要把所有的css,js分別綜合到一個文件中,並壓縮,緩存 2、清除magento模板中不必要的註釋,爲所使用到的圖片瘦身 3、優化magento代碼,這個步驟工作量大,但可能是效果顯著的步驟,不過前提是你非常熟悉magento,徹底刪除不用的模塊,關閉沒用的block,清除無效,無用的xml(解析xml非常昂貴的),在一個頁面中儘量不要大量調用magento的imageresize功能,非常消耗內存,除非你自己優化代碼。 4、mysql配置優化,充分發揮你的硬件資源,下面的數值要根據你的配置調整 My.ini代碼
key_buffer_size = 512Mmax_allowed_packet = 64Mtable_cache = 512sort_buffer_size = 4Mnet_buffer_length = 8Kread_buffer_size = 4Mread_rnd_buffer_size = 2Mmyisam_sort_buffer_size = 64Mtmp_table_size = 128Mquery_cache_size = 96Mquery_cache_type = 1thread_cache_size = 8max_connections = 400wait_timeout = 300 5、將magento的var目錄掛載到內存中,加快讀取速度,如 mount -t tmpfs -o size=100M,mode=0777 tmpfs var 6、安裝php加速器,如APC,XCACHE,eAccelerator,安裝方法參考相關的網站 然而歸於根本,最大的優化來自於對模板,對代碼,對block的優化。 |