好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > dedecms負載性能優化實例,三招讓你的dedecms快10倍以上第1/2頁

dedecms負載性能優化實例,三招讓你的dedecms快10倍以上第1/2頁

熱門標簽:電銷外呼線路改不外呼線路 強訊外呼系統 電話機器人批發 智能電銷機器人廣告語 長春極信防封電銷卡公司 貴陽ai外呼系統 重慶人工智能電銷機器人報價 crm外呼系統好不好 愛巢地圖標注

還是因為一個表的大數據造成性能嚴重下降?難道我們必須通過分多個表來存儲才能解決問題嗎?以下我們通過一個實例來解析和優化dedecms的數據管理性能,千萬別讓mysql當替罪羊,罪莫大焉。
測試數據是無意中得到的企業黃頁的數據,數據量將近90萬,都是完全真實的數據,測試使用的程序是dedecms4.0版本,你問為什么不用dedecms5.1?那是因為我們為了優化,針對dedecms做了很多修改,如果使用dedecms5.1,我們害怕收到法院傳票……,補充一句,以下的優化方法均能在dedecms5.1中使用,請在理解其原理的基礎上自行完成。

未優化前我們測試發現主要有三個經常性的操作在dede大數據量的情況下影響管理性能,分別是文檔生成、列表頁生成和欄目列出所有文章,我們就針對這三個方面進行優化實踐。
以下是測試數據的基本信息:

文檔數量接近90萬

每個欄目包含近3萬數據

1.改進文檔生成速度

問題提出

        和我們前一次測評結果相同,dedecms的文檔的生成速度慘不忍睹。使用默認模板(article_article.htm),平均接近30秒才能生成20個頁面(如圖),按照這個速度生成下去,90萬的數據全部生成網頁能等到頭發都白了。那么到底問題在哪里呢?

優化前單個欄目文檔生成速度

問題分析

        先排除表索引的問題,因為dede的數據庫已經在數據主表(dede_archives)為主要字段都建立了索引。再排除主要內容的提取效率問題,因為頁面生成過程中讀取頁面中的文章數據,每次需要到主表和附表中select取得id值唯一的數據內容,這個SQL語句的效率我們通過直接在mysql中運行SQL語句測試,執行時間非常短,因此這也不是最大的瓶頸。

        終于在頁面生成過程中,我們發現程序執行了數次主表(dede_archives)查詢,并取出符合一組復雜查詢條件數據的操作,查詢效率非常低,原來是它在影響效率!通過調試跟蹤,我們定位了問題的關鍵,元兇就是模板中arclist標簽。Arclist標簽是很多人很喜歡用的標簽,因為它比較靈活,能從數據中取出熱門、最新、相關等各種類型的文章列表,但是arclist標簽每次都會帶著一大推搜索條件去主表中查詢,實際上對于一次性生成大量文章來說,如果使用相同的模板,arclist對數據庫的查詢操作只是簡單機械重復罷了,為此而耗費了大量時間絕對是不值得的。接下來我們給出問題解決的建議。

解決問題

解決方案1:去掉最終頁面模板中的arclist標簽,或者盡可能少用。這個方法雖然能極大提高效率,但是無異于潑水把孩子潑走了,對于企圖增加訪問pv的網站來說,不建議使用。

解決方案2:建立arclist緩存,將每次arclist生成的數據放到臨時目錄或者緩存當中,在文檔生成過程中判斷緩存是否有更新,如果無更新,直接使用緩存數據。這個方法無需改變模板,對于提高生成效率也有一定的效果,但由于對程序改動較大,酌情考慮使用。

解決方案3:也是小組建議的解決方案,那就是充分挖掘現有dedecms的功能,在盡量不改變程序的基礎上,大幅提高效率。具體的方法就是通過freelist(自由列表生成)功能事先生成熱門文章、最新文章、相關文章等內容的列表頁面,然后使用dedecms提供的include標簽直接引入文檔頁面。標簽格式為:{dede:include file='列表頁面文件名稱' ismake=' no'/}。這個方案優點在于僅增加部分操作步驟,沒有改動任何程序,性能提高亦非常明顯。下圖就是我們利用這個方法優化后的生成速度,僅用時50秒就完成了1500多頁的文章生成,達成目標優化效果。此方案由于增加了操作步驟,懶人慎用。

優化后單個欄目文檔生成速度

2.改進列表頁面生成速度

問題提出

        接下來我們繼續測試列表頁面的生成,這次我們學乖了,先把模板(list_article.htm)中的arclist標簽刪除后再測試,但是生成效果依然非常不理想。如下圖,每個列表頁面生成時間接近20秒(我們修改了頁面結果輸出提示,為了大家更方便看到每個列表頁面生成時間),按照每頁50條數據計算,生成單個欄目的3萬數據理論上也要花費3個多小時,生成90萬數據……無語ing。由于列表內容使用的是list標簽,這是一個和arclist有點類似的標簽,因此我們不能延續上面的做法來解決問題,只能另辟蹊徑。

優化前的列表頁面生成速度

問題分析

        由于目標鎖定在list標簽,測試的過程就簡單了。我們直接使用dedecms中list的查詢語句做優化分析,很快發現了問題。我們測試了list中的sql查詢語句,以下代碼就是list用來查詢數據庫中對應條件的SQL語句,執行時間大約為15秒,效率很不理想。

Select arc.ID,arc.title,arc.iscommend,arc.color, arc.typeid,arc.ismake,arc.money,arc.description,arc.shorttitle, arc.memberid,arc.writer,arc.postnum,arc.lastpost, arc.pubdate,arc.senddate,arc.arcrank,arc.click,arc.litpic, tp.typedir,tp.typename,tp.isdefault,tp.defaultname, tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl from dede_archives arc left join dede_arctype tp on arc.typeid=tp.ID left join qiye_addonarticle on arc.ID = qiye_addonarticle.aid where arc.arcrank > -1 And ( ( arc.typeid='1′ ) or arc.typeid2='1′) order by arc.sortrank desc limit 0,50

        我們注意到這個SQL語句中的where子句使用了and和or的多種條件判斷,經驗告訴我們如果查詢子句中使用了in或者or語句,會導致全表掃描,這樣的話索引的效率就無法體現。我們簡化了where子句的判斷條件進行測試,結果發現刪除了or子句之后,查詢效率大幅提升,上面的查詢語句只用時不到1秒就獲得了查詢結果。這就是問題關鍵。

12下一頁閱讀全文

標簽:陜西 廣安 上海 保定 清遠 山南 內蒙古 吳忠

巨人網絡通訊聲明:本文標題《dedecms負載性能優化實例,三招讓你的dedecms快10倍以上第1/2頁》,本文關鍵詞  dedecms,負載,性能,優化,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《dedecms負載性能優化實例,三招讓你的dedecms快10倍以上第1/2頁》相關的同類信息!
  • 本頁收集關于dedecms負載性能優化實例,三招讓你的dedecms快10倍以上第1/2頁的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 少妇无套内谢太紧了A片软件| 真实国产普通话对白乱子子伦视频| 鲁一鲁一鲁一鲁一曰夜夜小说 | 色婷婷久久综合丁香五月狠狠野花| 男男Gay做受??视频| 国产午夜精品自在自线之la| 国产A√欧美AV无码免费视频| 亚洲AV无码乱码在线观看烟雨楼| 岛国二区| 五月天播播网| 亚洲免费视频观看| 曰本成Av人片日本伦电影| 色a情电影在线看| 一个人看的www片高清| 丝袜毛片| 欧美午夜福利1000集2019年| 国产精品白嫩在线观看| 日韩 欧美 人妻 中文| 99久久国产精品人妻无码| 一女多男调教爽文| 亚洲欧美日韩在线一区二区三区| 亚洲超级国模大胆私拍| 国产精品一区二区资源| 成+人+黄+色+免费观看| 成人国产精品秘?在线看明星合成| 欧美人69bj18一19| 国产又粗又大的成人片在线观看| 91久久久久久久精品青草第1集| 97午夜精品| 哪灬你的鸣巴好大视频| 好想好想爱上你| 色哟哟在线看一区二区三区| 欧美激情国产一区在线不卡| 《波多野结衣系列cesd-819》| 太深了好疼轻点小说完结| 午夜91| 美女脱光网站| 精品无码一区二区三区免费看| 狠狠色丁香婷婷综合潮喷| 秋霞网韩国理真伦三级| 免费91麻豆精品国产自产在线观看|