ECSHOP這款電商程序由于系統開源功能齊全受到了很多站長朋友們的青睞。近期很多站長朋友來聯系小編說ECSHOP二次開發后的網站訪問速度突然慢了下來,沒有以前快了。
開始A5源碼小編 以為是由于商城的圖片多,訪問的時候加載需要一點時間這是正常的,也可能是網站的JS問題導致的。這些都不是什么問題,只需要整體優化下就可以解決了。
可是近期A5源碼小編 每天都遇到一些站長朋友來反映說ECshop程序沒有以前訪問快了,小編這才想起分析比較慢的網站日志,從追蹤MYSQL對數據庫的增刪改查中看出來了端倪:有一個SQL語句:select count(*) form ‘ecs_category’操作頻率高,速度相當慢,很容易造成數據庫堆積,PHP空間資源被占,這樣引起的后果就是網站越來越慢了。
那么遇到了這個問題是對數據庫的操作導致的該如何優化解決呢?下面小編來詳細的把解決方法整理下吧。
第一步:連接空間的FTP,找到找到includes/lib_goods.php文件使用高級編輯器打開。在57行代碼:
$sql = 'SELECT count(*) FROM ' . $GLOBALS['ecs']->table('category') . " WHERE parent_id = '$parent_id' AND is_show = 1 ";
修改為:
$sql = 'SELECT cat_id FROM ' . $GLOBALS['ecs']->table('category') . " WHERE parent_id = '$parent_id' AND is_show = 1 LIMIT 1";
第二步:再繼續向下找到91行代碼:
$sql = 'SELECT count(*) FROM ' . $GLOBALS['ecs']->table('category') . " WHERE parent_id = '$tree_id' AND is_show = 1 ";
修改為:
$sql = 'SELECT cat_id FROM ' . $GLOBALS['ecs']->table('category') . " WHERE parent_id = '$tree_id' AND is_show = 1 LIMIT 1";
以上文件修改后直接上傳覆蓋之前的原文件即可。小編這里主要是針對數據庫方面SQL語句運行的效率不高做出的優化措施,其實ECshop這款程序在優化和需要二次開發的地方還是比較多的,感興趣的站長朋友們可以多研究下,小編就不一一列舉了。不過小編還是溫馨提示下在修改之前盡量都備份下程序文件,這樣不至于改錯了后丟失之前的文件哦。
新聞熱點
疑難解答