有三種方法來獲得使用Magento的社區版更好的性能:
1.使用清漆
光油(https://www.varnish-cache.org/)調用自身「網絡應用加速器」,是一個透明的反向代理。如果你知道魷魚,比你有一個模糊的想法 - 清漆就像魷魚,只有更聰明,更快。 :)
使用Varnish,您可以實現您自己的Full Site Cache,根據我的經驗,它甚至可以比Magento Enterprise Edition的Full Page Cache更快。
但是,Varnish不是一個標準的工具,所以如果你只是在普通的PHP webspace包中安裝Magento安裝,你可能無法安裝/使用它。要安裝和使用Varnish,您需要擁有(root)訪問您的系統或提供者的權限,這可以爲您提供Varnish作爲服務。有一些Magento託管服務提供商,它提供特殊的Magento託管服務,包括Varnish服務。
清漆本身緩存所有類型的靜態文件和頁面,整個產品視圖頁面。因此,如果您開始使用Varnish,您需要調整您的Magento,即創建一個特定的模塊,將您的網頁分爲靜態和動態內容。
例如:產品視圖是一個包含dymaic零件/塊的佔位符的頁面,如購物車小部件。靜態內容(頁面)將由Varnish交付,動態內容將由客戶端(瀏覽器)通過AJAX調用加載到您的應用程序服務器(Magento)。
因此,您的應用程序服務器只會調用那些動態塊和結帳/客戶登錄,您可以節省大量的性能。
Varnish已經有一些Magento模塊,比如http://www.magentocommerce.com/magento-connect/pagecache-powered-by-varnish.html - 只是谷歌的「Varnish Magento」,你會發現足夠的信息。
2.建立自己的cachesystem
除了使用清漆,你可以建立自己的,簡單的(愚蠢)高速緩存系統。沒有什麼比靜態HTML頁面更快。因此,我能想到的最簡單的緩存類型(並且自己已經實現)是一個愚蠢的cronjob,它定期抓取您的商店,將產品頁面存儲爲靜態HTML頁面。動態內容(再次購物車小部件,...)應該用佔位符替換。
現在您可以將這些靜態HTML頁面提供給客戶端,客戶端可以非常快速地瀏覽您的商店 - 因爲它們是靜態的。動態內容必須在客戶端(瀏覽器)上再次使用AJAX調用來替換您的系統。
很愚蠢,但很簡單,工作正常 - 只要你沒有成千上萬的產品(爬行需要很長時間)。
3.不要使用Magento的
只是一個玩笑,... :)但是,是的,Magento的趨於緩慢。
對Magento性能優化也很有用:The Magento Best Practice for Performance and Scalibilty Whitepaper。即使是企業版,一些技巧也對Commiunity Edition非常有用。
獲取完整頁面緩存權利很複雜且需要很多工作。投資現有模塊FWIW可能會便宜得多。我建議重新考慮你的優先事項。 – Vinai 2012-03-02 09:58:57
如果我通過僅緩存cms/catalog/product頁面來實現這種緩存,只有當客戶註銷並且他沒有像購物車或whishlist或其他任何行爲一樣。 – 2012-03-02 11:26:23