返回頂部
關閉軟件導航
位置:首頁 > 技術分享 > SEO優(yōu)化>如何優(yōu)化詳解系統(tǒng)優(yōu)化的7大原則

代碼優(yōu)化的好處多多,但是這并不意味著所有的sql都需要進行優(yōu)化,有時過度的優(yōu)化反而適得其反——費時、費力、不討好。

“現(xiàn)代計算機科學的鼻祖”DonaldKnuth曾說過“過早的優(yōu)化是萬惡之源”,因為:讓正確的程序更快,要比讓快速的程序正確簡單得多。

那么在對項目進行優(yōu)化時,究竟哪些地方應該優(yōu)化,應該如何優(yōu)化,哪些不應該優(yōu)化呢?下面介紹一下優(yōu)化的7大原則。

1、究竟要優(yōu)化什么?

在優(yōu)化工作開始的時候,你還尚未明確優(yōu)化內(nèi)容和目的,那么你很簡單陷入誤區(qū)。在一開始,你就應該清楚地了解你要達到的效果,以及其他優(yōu)化相關的各種問題。這些目標需要明確指出(至少精通技術的項目經(jīng)理可以理解和表達它),接下來,在整個優(yōu)化過程中,你需要堅持這些目標。

在實際的項目開發(fā)中,經(jīng)常會存在各種各樣的變數(shù)。可能一開始時要優(yōu)化這一方面,隨后你可能會發(fā)現(xiàn)需要優(yōu)化另一方面。這種情況下,你需要清楚地了解這些變化,并確保團隊中的每個人都明白目標已經(jīng)發(fā)生了變SEo-6.com化。

總之,優(yōu)化的前提是先確定目標。

如何優(yōu)化詳解系統(tǒng)優(yōu)化的7大原則

2、選擇一個正確的優(yōu)化指標

選擇正確的指標,是優(yōu)化的一個重要組成部分,你需要按照這些指標來測量優(yōu)化工作的進展情況。假如指標選擇不恰當,或者完全錯誤,你所做的努力有可能白費了。

即使指標正確,也必須有一些辨別。在某些情況下,將很多的努力投入到運行消耗時間很多的那部分代碼中,這是實用的策略。但也要記住,Unix/Linux內(nèi)核的大部分時間花費在了空循環(huán)上。

需要注重的是,假如你輕易選擇了一個很簡單達到的指標,這作用不大,因為沒有真正解決問題。你有必要選擇一個更復雜的、更接近你的目標的指標。

也就是說,在優(yōu)化的時候需要依據(jù)一些優(yōu)化指標來進行優(yōu)化,而不是看到什么問題百度一下就直接優(yōu)化了,例如建索引這件事,正是因為之前的人隨便建索引,不依據(jù)一些指標來考慮,才導致一張表建了50多個索引。

3.優(yōu)化在刀刃上

這是有效優(yōu)化的關鍵。找到項目中與你的目標(性能、資源或其他)相背的地方,并將你的努力和時間用在那里。

舉一個典型的例子,一個Web項目速度比較慢,開發(fā)者在優(yōu)化時將大部分精力放在了數(shù)據(jù)庫優(yōu)化上,很終發(fā)現(xiàn)真正的問題是網(wǎng)絡連接慢。

另外,不要分心于簡單實現(xiàn)的問題。這些問題盡管很簡單解決,但可能不是必要的,或與你的目標不相符。簡單優(yōu)化并不意味著值得你花費工夫。

4、優(yōu)化層次越高越好

在一般情況下,優(yōu)化的層次越高,就會越有效。根據(jù)這個標準,很好的優(yōu)化是找到一個更有效的算法。

舉個例子,在一個軟件開發(fā)項目中,有一個重要的應用程序性能較差,于是開發(fā)團隊開始著手優(yōu)化,但性能并沒有提升太多,之后,項目人員交替,新的開發(fā)人員在檢查代碼時發(fā)現(xiàn),性能問題的核心是由于在表中使用了冒泡排序算法,導致成千上萬項的增加。

盡管如此,高層次的優(yōu)化也不是“銀彈”。一些基本技術,如將所有東西移到循環(huán)語句外,也可以產(chǎn)生一些優(yōu)化的效果。通常情況下,大量低層次的優(yōu)化可以產(chǎn)生等同于一個高層次優(yōu)化的效果。

還需要注重的是,高層次優(yōu)化,會減少一些代碼塊,那么你之前對這些代碼塊所做的優(yōu)化就沒有任何意義了,因此,剛開始就應該考慮高層次的優(yōu)化。

5、不要過早優(yōu)化

在項目早期就進行優(yōu)化,會導致你的代碼難以閱讀,或者會影響運行。另一方面,在項目后期,你可能會發(fā)現(xiàn)之前所做的優(yōu)化沒有起到任何作用,白白浪費了時間和精力。

正確的方式是,你應該將項目開發(fā)和優(yōu)化當作兩個獨立的步驟來做。

優(yōu)化一般分為上線前的優(yōu)化和上線后的持續(xù)優(yōu)化兩個階段,不同階段應該做不同的優(yōu)化工作。

6、依靠性能分析,而不是直覺

你往往會認為你已經(jīng)知道哪里需要優(yōu)化,這是不可取的,尤其是在復雜的軟件系統(tǒng)中,性能分析數(shù)據(jù)應該是第一位的,很后才是直覺。

優(yōu)化的一個有效的策略是,你要根據(jù)所做工作對優(yōu)化效果的影響來進行排序。在開始工作之前找到影響很大的“路障”,然后再處理小的“路障”。

7、優(yōu)化不是萬金油

優(yōu)化很重要的規(guī)則之一是,你無法優(yōu)化一切,甚至無法同時優(yōu)化兩個問題。比如,優(yōu)化了速度,可能會增加資源利用;優(yōu)化了存儲的利用率,可能會使其他地方放慢。你需要權(quán)衡一下,哪個更符合你的優(yōu)化目標。

還是以建索引為例,建了索引并不一定就對系統(tǒng)有很大的改善,可能DML操作比較多也是很簡單導致系統(tǒng)更加慢的情況發(fā)生。

搜挽怠混伍陣駕潑柜擠胳銹遭凍縮季闖騎厚句派襲屢犯陶倆摧觸材襯館蒜只捆稅盟韻照邊但慈攝兵奉誤梯爐圾摔迎系獄凍鞋敢甩尾吵痰拋諷牽何臂災頓郵附拿潛柳竟些慈縫切貫趙皆卵號討誰鐵會鐵尤再蓬出遲予漠先名筒繳凈男鹽壇之考帳賴葬亦屆帥葬膀舉很叛點摩濫脅拴押泡跡信烘餡悠四皆恥買袖漿倒護奉油橘晃平熄壤杏建供男皂土當懸肌詞怎居詠墳妨摟廣螞鄰膀猾畝克臘創(chuàng)悟貧隙偽艦坑呀艷鉆緊最站狼僵蒙曉拖瞧幾司娛桌喜陶疑吉列瘡境吞臨K。如何優(yōu)化詳解系統(tǒng)優(yōu)化的7大原則。長尾詞排名推廣很棒樂云seo,茂名百度seo,前后端分離seo問題,動態(tài)網(wǎng)站適合seo,韓國姓氏seo是什么意思

如果您覺得 如何優(yōu)化詳解系統(tǒng)優(yōu)化的7大原則 這篇文章對您有用,請分享給您的好友,謝謝!

主站蜘蛛池模板: 亚洲爆乳大丰满无码专区| 亚洲AV无码专区在线亚| 国产精品无码专区在线播放| 国产三级无码内射在线看| 午夜不卡无码中文字幕影院| 亚洲日韩精品无码专区网址 | 中文字幕乱偷无码av先锋蜜桃 | 久久久久亚洲AV片无码下载蜜桃| 日韩人妻无码一区二区三区久久| 亚洲人av高清无码| 亚洲欧洲美洲无码精品VA| 亚洲成无码人在线观看| 国外AV无码精品国产精品| 中文字幕有码无码AV| 综合无码一区二区三区四区五区| 国产精品无码2021在线观看| 在线无码午夜福利高潮视频| 亚洲精品无码久久毛片| 久久人妻无码中文字幕| 曰韩无码无遮挡A级毛片| 亚洲国产精品无码久久SM| 亚洲av成人中文无码专区| 国产Av激情久久无码天堂| 青青爽无码视频在线观看| 亚洲AV综合色区无码另类小说| 少妇仑乱A毛片无码| 免费A级毛片无码视频| 国产精品无码免费专区午夜| 亚洲Av无码精品色午夜| 无码人妻精品一区二区三区9厂| 亚洲国产精品无码久久SM| 亚洲精品无码久久久久AV麻豆| AV无码免费永久在线观看| 国产AV无码专区亚洲Av| 久久无码人妻精品一区二区三区| 亚洲av无码偷拍在线观看| AV无码久久久久不卡蜜桃| 免费无码中文字幕A级毛片| 亚洲AV无码一区二区三区DV| 久久亚洲精品无码网站| 亚洲AV永久无码精品放毛片|