標籤:
ECshop網店系統對於產品的資料、模板、Query都可以緩衝,也就是把一些商品詳情頁、分類頁、Search頁的資料經過一次訪問後,用檔案的形式儲存下來,下次有人訪問相同的頁面時,不用再查資料庫,直接讀取Cache展示出來,減少伺服器資料庫壓力。
這樣的做法的確可以加速訪問,減少資源浪費,對於流量比較大,或者頁面重複訪問Hit Rate比較高的很有用,但這個也只能解決一部分問題,對於一個有幾十萬商品的ECshop網店來說,最大的壓力不是來自於自然訪問的流量,而是勤勞的Google Bot或者Bing的Bot,一天幾萬的高頻度抓取,會讓你的系統響應極慢甚至崩潰。
由於偶的ECshop是測試站,不以實際交易為目的的,有些設定比較誇張,大家懂的,根據實際情況自行調整吧。
第一步簡單的最佳化,根據實際情況調整模板Cache時間
在程式includes目錄下,有個cls_template.php的檔案,開啟,找到以下設定項,看你期望更新的時間,預設1個小時,由於我的商品變更很小,設定了40個小時,144000秒。
var $cache_lifetime = 144000; // 緩衝更新時間, 預設 3600 秒
第二步,調整ECshop可佔用的記憶體,商品數量大的時候,記憶體可能不夠用,適當增大記憶體
在程式includes目錄下,有個init.php檔案,開啟,根據你伺服器的情況,適當調整,我設定的是256M,大概50W商品沒有問題。
@ini_set(‘memory_limit‘, ‘256M‘);
第三步,調整SQL Cache時間,減少資料庫查詢,加快響應速度
在程式includes目錄下,有個cls_mysql.php檔案,找到以下設定項修改,我是緩衝24小時
var $max_cache_time = 86400; // 最大的緩衝時間,以秒為單位
簡單的一些設定,某些程度上有些協助,算菜鳥入門級吧
轉載:http://blog.sina.com.cn/s/blog_70ea94110101h5cr.html
ECshop網店系統百萬級商品量效能最佳化-簡單的一些Cache記憶體配置