新聞中心
Ecshop數(shù)據(jù)表ecs_category操作頻率導(dǎo)致網(wǎng)站訪問慢的解決方法
作者 / 無憂主機 時間 2015-01-29 13:38:21
ECSHOP這款電商程序由于系統(tǒng)開源功能齊全受到了很多站長朋友們的青睞。近期很多站長朋友來聯(lián)系小編說ECSHOP二次開發(fā)后的網(wǎng)站訪問速度突然慢了下來,沒有以前快了。開始小編以為是由于商城的圖片多,訪問的時候加載需要一點時間這是正常的,也可能是網(wǎng)站的JS問題導(dǎo)致的。這些都不是什么問題,只需要整體優(yōu)化下就可以解決了??墒墙谛【幟刻於加龅揭恍┱鹃L朋友來反映說ECshop程序沒有以前訪問快了,小編這才想起分析比較慢的網(wǎng)站日志,從追蹤MYSQL對數(shù)據(jù)庫的增刪改查中看出來了端倪:有一個SQL語句:select count(*) form 'ecs_category'操作頻率高,速度相當(dāng)慢,很容易造成數(shù)據(jù)庫堆積,PHP空間資源被占,這樣引起的后果就是網(wǎng)站越來越慢了。那么遇到了這個問題是對數(shù)據(jù)庫的操作導(dǎo)致的該如何優(yōu)化解決呢?下面小編來詳細的把解決方法整理下吧。 第一步:連接空間的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";第二步:再繼續(xù)向下找到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";以上文件修改后直接上傳覆蓋之前的原文件即可。小編這里主要是針對數(shù)據(jù)庫方面SQL語句運行的效率不高做出的優(yōu)化措施,其實ECshop這款程序在優(yōu)化和需要二次開發(fā)的地方還是比較多的,感興趣的站長朋友們可以多研究下,小編就不一一列舉了。不過小編還是溫馨提示下在修改之前盡量都備份下程序文件,這樣不至于改錯了后丟失之前的文件哦。 無憂主機相關(guān)文章推薦閱讀: 如何利用巧妙UPDATE語句清空所有會員的積分方法 無憂小編淺談:如何設(shè)置ECSHOP的WAP版本首頁標(biāo)題 ECSHOP解決購物車無法使用如何設(shè)置一步購買的方法 ECSHOP上傳商品圖片在空間生成文件夾如何自動以年月日命名?
本文地址:http://www.gle-technology.com/ecshop/18509.html