1、什麼是網站性能優化,為什麼要優化
百度搜索一個問題時有至少都有幾十萬條數據,如果不做優化,都沒人會看到你的網站,你說這種情況下網站能帶來什麼效益呢?
2、如何優化網路
其一:盡量關閉那些特別佔用資源的程序,如:殺毒軟體掃描時候
其二:
好象有個什麼軟體叫作:e! My'Net'Assistant
能優化上網速度~~~
介紹如下:
e! My'Net'Assistant是一個集網路優化調整和網路安全維護的設置與管理的軟體。e! My'Net'Assistant為用戶提供:網路速度優化設置(可以用於Modem,ADSL,VDSL,LAN,PLC,Cable Modem,衛星傳輸等主流上網方式的性能優化,經過實測,1MB的ADSL,優化前下載速度有 100KB/S 已經很快了,優化後速度可以達到150甚至5xxKB/S,其性能可以提高100%—500%)、網路信息安全維護(IE插件免疫,常見木馬分析,常見病毒檢測,彈出廣告攔截,惡意網站免疫)、系統常規設置、系統文件及注冊表備份與還原、系統進程,服務,網路管理與監控等幾十項功能模塊。
全面提升網路性能,維護系統安全;讓網路管理更有效,讓上網更方便;加速!可以更快就不要等待;鎖定!不想被用的就全部禁止;提升!讓電腦性能飆到最高點!
簡潔、合理的軟體界面布局,全智能化和向導式的網路優化設置功能,使你操作起來輕松自如,一切就這么簡單。現在,就開始行動......原來電腦性能可以更好的!
1.領先的網路優化項目,全面提升網路性能:軟體開發組通過對WINDOWS操作系統環境(9X/Me/NT/2000/XP/2003)下的500台電腦的實際評測分析,自主分析評測出絕對領先的多達29項的網路優化項目,通過智能化的自動優化向導,將網路系統參數設置得更合理,讓用戶的網路性能發揮到最高點;為方便高級用戶,軟體內置了詳細的自定義手工優化系統,可以更精確的設置各個項目;最安全、最先進的系統同步備份與還原功能,可以讓用戶輕松的將系統恢復到優化以前的狀態,以保障系統的優化安全。
2.全新、快速的MaxMTU檢測演算法,讓用戶可以輕松檢測出自己的TCP/IP最大傳輸單元:MaxMTU是指TCP/IP的最大傳輸單元,在TCP/IP協議中,將要傳輸的數據分成較小的組進行傳輸。MaxMTU的正確設置在一定程度上關繫到網路優化的成敗。而本軟體的MaxMTU偵測模塊可以高效准確的檢測出正確的MaxMTU值,徹底解決同類軟體檢測MaxMTU波動性較大的弊病,同時在檢測過程中對系統資源(如CPU)的佔用率極低。
3.高效的網路信息檢測技術:可以非常准確的檢測出當前用戶的詳細的網路信息。
4.去除上網瀏覽網頁時彈出的煩人的IE插件安裝窗口:軟體中內置的"IE插件免疫"功能,可以有效屏蔽四百多種國內外常見的ActiveX控制項,包括:國內、國外、聊天、影音、游戲、安全、日常(如:3721上網助手、3721網路實名、CNNIC通用域名、百度IE搜索伴侶、3721中文郵、Flash Player)等等插件,還用戶一個干凈、清潔的網上沖浪環境。
5.常見木馬與病毒檢測分析:通過獨特方式對系統各方面進行掃描檢測分析,以找出系統中的隱患,維護系統的安全,真正做到「我的電腦,我控制」。
6.彈出廣告與惡意網站的剋星:通過簡單實用的方式真正屏蔽網站中的彈出廣告;自動免疫屏蔽惡意網站,用戶還可以通過此功能屏蔽不良網站,以達到阻止孩子訪問不良網站的目的,使他們免受有害信息的侵襲。
7.系統常規設置與優化:用戶可以輕松的進行包括:界面、圖標菜單、用戶許可權、IE常規等個性化設置;可以自動修復被惡意篡改的IE瀏覽器,分析IE地址欄中的已訪問網址並進行自定義刪除。
8.實用工具選項:從實用出發,為用戶量身定作包括:系統備份與還原、系統進程管理、內存整理、網路監控、軟體卸載、自動運行管理、網路校時與自動關機等實用工具,正真做到「有之必能用之」。
9.最安全、最先進的系統同步備份與還原功能:由軟體開發組獨創的最安全、最先進的系統同步備份與還原功能,可以讓用戶輕松的將系統恢復到優化與設置以前的狀態,以保障系統的優化與設置安全。
3、網站性能優化怎麼辦
一、前端優化
網站性能優化是一個很綜合的話題,涉及到伺服器的配置和網站前後端程序等各個方面,我只是從實際經歷出發,分享一下自己所嘗試過的網站性能優化方法。之所以在標題上掛一個web2.0,是因為本文更偏重於中小網站的性能優化,我所使用的系統也是典型web2.0的LAMP架構。
首先講講前端的優化,用戶訪問網頁的等待時間,有80%是發生在瀏覽器前端,特別是頁面和頁面中各種元素(圖片、CSS、Javascript、 flash…)的下載之上。因此在很多情況下,相對於把大量的時間花在艱苦而繁雜的程序改進上,前端的優化往往能起到事半功倍的作用。雅虎最近將內部使用的性能測試工具yslow向第三方公開,並發布了著名的網站性能優化的十三條規則,建議你下載並安裝yslow,並作為測評網站優化效果的工具。下面我挑其中特別有價值的具體說明一下優化的方法:
對於第一次訪問您網站,尚未在瀏覽器cache中緩存您網站內容的用戶,我們可以做的事情包括:
1)減少一個頁面訪問所產生的http連接次數
對於第一次訪問你網站的用戶,頁面所產生的http連接次數是影響性能的一個關鍵瓶頸。
對策:
- 盡量簡潔的頁面設計,最大程度減少圖片的使用,通過放棄一些不必要的頁面特效來減少javascript的使用。
- 使用一些優化技巧,比如利用圖片的背景位移減少圖片的個數;image map技術;使用Inline images將css圖片捆綁到網頁中。
- 盡量合並js和css文件,減少獨立文件個數。
2) 使用gzip壓縮網頁內容
使用gzip來壓縮網頁中的靜態內容,能夠顯著減少用戶訪問網頁時的等待時間(據說可達到60%)。主流的web伺服器都支持或提供gzip壓縮,如果使用apache伺服器,只需要在配置文件中開啟 mod_gzip(apache1.x)或mod_deflate(apache2.x)即可。凡是靜態的頁面,使用gzip壓縮都能夠顯著提高伺服器效率並減少帶寬支出,注意圖片內容本身已經是壓縮格式了,務必不要再進行壓縮。
3)將CSS放在頁面頂端,JS文件放在頁面底端
CSS的引用要放在html的頭部header中,JS文件引用盡量放在頁面底端標簽的後面,主要的思路是讓核心的頁面內容盡早顯示出來。不過要注意,一些大量使用js的頁面,可能有一些js文件放在底端會引起一些難以預料的問題,根據實際情況適當運用即可。
4)使JS文件內容最小化
具體來說就是使用一些javascript壓縮工具對js腳本進行壓縮,去除其中的空白字元、注釋,最小化變數名等。在使用gzip壓縮的基礎上,對js內容的壓縮能夠將性能再提高5%。
5)盡量減少外部腳本的使用,減少DNS查詢時間
不要在網頁中引用太多的外部腳本,首先,一次dns的解析過程會消耗20-120毫秒的時間;其次,如果在頁面中引用太多的外部文件(如各種廣告、聯盟等代碼),可能會因為外部文件的響應速度而將你的網站拖得很慢。如果不得不用,那麼就盡量將這些腳本放在頁腳吧。不過有一點需要提及,就是瀏覽器一般只能並行處理同一域名下的兩個請求,而對於不同子的域名則不受此限制,因此適當將本站靜態內容(css,js)放在其他的子域名下(如 static.xxx.com)會有利於提高瀏覽器並行下載網頁內容的能力。
對於您網站的經常性訪問用戶,主要的優化思路就是最大限度利用用戶瀏覽器的cache來減少伺服器的開銷。
1)在header中添加過期時間(Expires Header)
在header中給靜態內容添加一個較長的過期時間,這樣可以使用戶今後訪問只讀取緩存中的文件,而不會與伺服器產生任何的交互。不過這樣做也存在一些問題,當圖片、CSS和js文件更新時,用戶如果不刷新瀏覽器,就無法獲得此更新。這樣,我們在對圖片、css和js文件修改時,必須要進行重命名,才能保證用戶訪問到最新的內容。這可能會給開發造成不小的麻煩,因為這些文件可能被站點中的許多文件所引用。flickr提出的解決辦法是通過url rewrite使不同版本號的URL事實上指向同一個文件,這是一個聰明的辦法,因為url級別的操作效率是很高的,可以給開發過程提供不少便利。
要理解為什麼這樣做,必須要了解瀏覽器訪問url時的工作機制:
a. 第一次訪問url時,用戶從伺服器段獲取頁面內容,並把相關的文件(images,css,js…)放在高速緩存中,也會把文件頭中的expired time,last modified, ETags等相關信息也一同保留下來。
b. 用戶重復訪問url時,瀏覽器首先看高速緩存中是否有本站同名的文件,如果有,則檢查文件的過期時間;如果尚未過期,則直接從緩存中讀取文件,不再訪問伺服器。
c. 如果緩存中文件的過期時間不存在或已超出,則瀏覽器會訪問伺服器獲取文件的頭信息,檢查last modifed和ETags等信息,如果發現本地緩存中的文件在上次訪問後沒被修改,則使用本地緩存中的文件;如果修改過,則從伺服器上獲取最新版本。
我的經驗,如果可能,盡量遵循此原則給靜態文件添加過期時間,這樣可以大幅度減少用戶對伺服器資源的重復訪問。
2)將css和js文件放在獨立外部文件中引用
將css和js文件放在獨立文件中,這樣它們會被單獨緩存起來,在訪問其他頁面時可以從瀏覽器的高速緩存中直接讀取。一些網站的首頁可能是例外的,這些首頁的自身瀏覽可能並不大,但卻是用戶訪問網站的第一印象以及導向到其他頁面的起點,也可能這些頁面本身使用了大量的ajax局部刷新及技術,這時可以將 css和js文件直接寫在頁面中。
3)去掉重復的腳本
在IE中,包含重復的js腳本會導致瀏覽器的緩存不被使用,仔細檢查一下你的程序,去掉重復引用的腳本應該不是一件很難的事情。
4)避免重定向的發生
除了在header中人為的重定向之外,網頁重定向常在不經意間發生,被重定向的內容將不會使用瀏覽器的緩存。比如用戶在訪問www.xxx.com,伺服器會通過301轉向到www.xxx.com/,在後面加了一個「/」。如果伺服器的配置不好,這也會給伺服器帶來額外的負擔。通過配置apache的 alias或使用mod_rewrite模塊等方法,可以避免不必要的重定向。
還有一些,比如使用CDN分發機制、避免CSS表達式等、避免使用ETags等,因為不太常用,這里就不再贅述了。
做完了上述的優化,可以試著用yslow測試一下網頁的性能評分,一般都可以達到70分以上了。
當然,除了瀏覽器前端和靜態內容的優化之外,還有針對程序腳本、伺服器、資料庫、負載的優化,這些更深層次的優化方法對技術有更高的要求。本文的後半部分將重點探討後端的優化。
二、後端優化
上次寫完web2.0網站前端優化篇之後,一直想寫寫後端優化的方法,今天終於有時間將思路整理了出來。
前端優化可以避免我們造成無謂的伺服器和帶寬資源浪費,但隨著網站訪問量的增加,僅靠前端優化已經不能解決所有問題了,後端軟體處理並行請求的能力、程序運 行的效率、硬體性能以及系統的可擴展性,將成為影響網站性能和穩定的關鍵瓶頸所在。優化系統和程序的性能可以從以下的方面來入手:
1)apache、mysql等軟體的配置的優化
盡管apache和mysql等軟體在安裝後使用的默認設置足以使你的網站運行起來,但是通過調整mysql和apache的一些系統參數,還是可以追求更高的效率和穩定性。這個領域中有很多專業的文章和論壇(比如: http://www.mysqlperformanceblog.com/),要想掌握也需要進行深入的研究和實踐,這里就不重點討論了。
2)應用程序環境加速
這里僅以我最常應用的php開發環境為例,有一些工具軟體可以通過優化PHP運行環境來達到提速的目的,其基本原理大致是將PHP代碼預編譯並緩存起來,而不需要改變任何代碼,所以比較簡單,可以將php的運行效率提升50%以上。比較常用的免費php加速工具有:APC( http: //pecl.php.net/package-info.php?package=APC)、Turck MMCache( http://turck-mmcache.sourceforge.net)、php accelebrator(www.php-accelerator.co.uk),還有收費的Zend Performance Suite
3)將靜態內容和動態內容分開處理
apache是一個功能完善但比較龐大的web server,它的資源佔用基本上和同時運行的進程數呈正比,對伺服器內存的消耗比較大,處理並行任務的效率也一般。在一些情況下,我們可以用比較輕量級的web server來host靜態的圖片、樣式表和javascript文件,這樣可以大大提升靜態文件的處理速度,還可以減少對內存佔用。我使用的web server是來自俄羅斯的nginx,其他選擇方案還包括lighttpd和thttpd等。
4)基於反向代理的前端訪問負載均衡
當一台前端伺服器不足以應付用戶訪問時,通過前端機實現web訪問的負載均衡是最快速可行的方案。通過apache的mod_proxy可以實現基於反向代理的負載均衡,這里推薦使用nginx做代理伺服器,處理速度較apache更快一些。
5)應用緩存技術提高資料庫效能,文件緩存和分布式緩存
資料庫訪問處理並發訪問的能力是很多網站應用的關鍵瓶頸,在想到使用主從結構和多farm的方式構建伺服器集群之前,首先應該確保充分使用了資料庫查詢的緩存。一些資料庫類型(如mysql的innoDB)自身內置對緩存的支持,此外,還可以利用程序方法將常用的查詢通過文件或內存緩存起來。比如通過 php中的ob_start和文件讀寫函數可以很方便的實現文件形式的緩存,而如果你擁有多台伺服器,可以通過memcache技術通過分布式共享內存來對資料庫查詢進行緩存,不僅效率高而且擴展性好,memcache技術在livejournal和Craigslist.org等知名網站應用中都得到了檢驗。
6)伺服器運行狀態的檢測,找到影響性能的瓶頸所在
系統優化沒有一勞永逸的方法,需要通過檢測伺服器的運行狀態來及時發現影響性能的瓶頸,以及可能存在的潛在問題,因為網站的性能,永遠取決於木桶中的短板。可以編寫一些腳本來檢測web服務的運行,也有一些開源的軟體也提供了很好的功能
7)良好的擴展架構是穩定和性能的基礎
一些技巧和竅門可以幫你度過眼前的難關,但要想使網站具備應付大規模訪問的能力,則需要從系統架構上進行徹底的規劃,好在很多前人無私的把他們架構
網站的經驗分享給我們,使我們可以少走甚多彎路。我最近讀到的兩篇有啟發的文章:
- 從LiveJournal後台發展看大規模網站性能優化方法
- Myspace的六次重構
最後不得不提到程序編碼和資料庫結構對性能的影響,一系列糟糕的循環語句,一個不合理的查詢語句、一張設計不佳的數據表或索引表,都足以會使應用程序運行的速度成倍的降低。培養全局思考的能力,養成良好的編程習慣,並對資料庫運行機制有所了解,是提高編程質量的基礎。
4、如何優化web網站的性能
提升頁面載入速度
1、圖片大小越小打開速度越快
2、網頁中代碼不要臃腫所以不要有無用代碼
3、js css使用外部引入
4、如果js css 不是顯示用戶看到的信息 而是一些特效的話放在最後載入。
5、一個新網站怎麼做優化?
第一、關鍵詞分析
SEO優化的第一步,也是最重要的一步,就是將關鍵詞需要關注的量進行分析、關鍵詞與網站的相關性進行分析、關鍵詞的布置和排名預測等相關知識進行分析,
將各個部分聯系在一起,不是每一個部分都獨立於彼此,而是環環相扣,標題和內容等都與關鍵詞密切相關,進行搜索引擎時也會容易被收錄和接納。
第二、網站架構分析
主要包括剔除網站架構設計中不符合人性化設計的部分、實現目錄結構的簡潔清晰、網站導航的創意性獨特,突出性明顯和外部鏈接的優質廣泛等內容。
第三、網站目錄和頁面優化
這也是SEO優化的基本操作了,將網站的基本信息進行優化處理,保證用戶對於網站能夠在瀏覽之後有一定的了解和熟悉。
頁面的字體大小要合適,不能因為過小而失去一大批視力不好的消費者,也不能因為過大沒有多少信息而失去有強迫症或者發散能力不強的用戶等。
第四、內容發布和鏈接布置
SEO優化的重要步驟之一就是內容的定期發布和更新,要合理安排網站內容的更新日程和相關訊息。
而且發布的內容要保證原創性,鏈接的質量也要得到保障,不要發一些復制來的文章或者添加一些低質量的鏈接,這樣反而對優化效果並不好。
6、你好 網站怎麼進行優化?
你要明確目標,是速度優化,還是對搜索引擎優化? 速度優化可以先測試,找到性能瓶頸,然後有針對性的優化。nginx可以壓縮圖片,JS等文件,對改善性能有比較顯著的效果。對搜索引擎優化,可以百度一下SEO的相關內容。
7、如何對網站進行性能優化
一、刪除功能:重要數據偽刪除,刪除校驗用戶(避免A用戶可以刪除任何人數據)。文件上傳預覽刪除功能不能做伺服器文件刪除,不要為了節省伺服器資源給用戶留下介面。如果要資源有限,那麼在刪除的時候也需要做用戶校驗(文件命名或文件路徑關聯用戶ID等)
二、發簡訊:基本上沒有人願意自己和簡訊運營商直接對接簡訊業務,一般都是通過第三方簡訊服務商購買簡訊。在用戶主動獲取簡訊的時候前端做圖片驗證碼校驗,後端做發送量,發送間隔校驗(圖片驗證碼是可以被機識別的)。做簡訊日誌記錄,這些日誌可以為前面的後台校驗提供數據,系統運行期間的各種好處就不一一舉例了。重要功能做語音驗證碼,比如注冊送現金的活動,簡訊驗證碼可以被識別
三、頁面數據獲取:用戶平凡的刷新數據會加大伺服器壓力,當然誰也擋不住用戶刷新是吧,但是減少主動刷新次數也是一個減小伺服器壓力的方法,咱不能自己坑自己吧,(Table頁切換做校驗,有數據就不再拉取等等)
四、前端靜態資源做CDN,可以提高用戶訪問速度,減少伺服器壓力
五、用戶輸入做SQL注入,javascript腳本注入
六、用到的Ajax請求:做ajax加攔截器,通過消息頭過濾掉非ajax的地址欄訪問,(誰然不一定能全部攔截,但是攔掉一部分小白還是可以得,總不能是個人就能攻擊吧)
七、用戶輸入數據校驗,輸入文字長度,數字輸入大小,int 、long等數據類型合理使用,(積分兌換的時候用戶只有1積分,你讓他輸入兌換積分,你輸入21000000000,int 接收的時候,超出了范圍成了負數1永遠大於負數),還有一點很重要,你的任何校驗都不要依靠前端,畢竟前端是為用戶的體驗而生的,為了自己的安全還是多寫點後台校驗吧,
八、異常捕獲:不要將異常信息拋給用戶,首先不美觀,其次這些錯誤信息中可能含有SQL錯誤,通過這些sql可以了解到你的資料庫結構
九、前端數據獲取的時候減少不必要欄位輸出,java面向對象,表數據面向對象,本來頁面只需要兩個數據,結果你返回了一個實體,前端可已查看到你資料庫表結構,多看幾個頁面那麼你的資料庫設計就給了人家了呢
十、用戶信息加密傳輸,一定不要把重要數據留在客戶端,泄密重要信息的責任是要你承擔的哦
十一、 現在越來越多人使用阿里雲伺服器,做客戶項目的時候伺服器是客戶購買的,當然阿里雲賬戶客戶也有,你的配置文件不加密客戶就能看見你的系統配置,結合上面的搞搞你的資料庫,那你的產品還有什麼秘密,至於代碼,你覺得他值錢么
十二、 前端JS 腳本 和頁面分離,壓縮或加密,不要你的團隊倖幸苦苦開發的唯美的頁面和效果,被人家一個ctrl+s拿去回家研究了,何況你的js中還有大量的邏輯
十三、 線程安全:
1、synchronized同步 (有序性、可見性),
2、使用生產者消費者模式,(喚醒notify(),等待wait())
3、volatile同步(可見性,非有序性,只在無基礎數據的賦值操作,直接操作主內存,減少主內存復制到工作內存的cpu消耗)
十四、 資料庫讀寫分離的時候要注意個別業務讀也要讀在主庫上(避免主從同步失敗或延時)
8、如何進行基本的性能優化
近些年對資料庫內核抄的研究與開發多集中於存儲引擎層面,對查詢優化器進行深入分析的少之又少,更不用談與之相關的書籍,本書很好地彌補了這一空白。相信包括我在內的很多資料庫開發人員都非常想知道資料庫查詢優化器的底層實現
9、怎樣優化系統性能?
1、Windows9x用戶
Windows查找文件時要訪問文件分配表(FAT),它可以通過儲存已訪問的文件的路徑和名字來加快下一次訪問的速度。如果設置為便攜機,系統只能存儲16個文件夾和337個文件,使用約4KB內存;設置為台式機,那麼系統能存儲已訪問過的32個文件夾和677個文件,使用約10KB的內存;而設置為網路伺服器可以存儲高達64個文件夾和2729個文件,使用約40KB的內存。所以將系統設置為網路伺服器可以大幅度提高FAT存儲能力加快訪問速度。Windows優化大師針對不同的用戶類型為使用者提供了7種文件系統優化方式。其中包括:Windows標准用戶適用於Windows的所有沒有特殊需求的用戶;電腦游戲愛好者用戶適用於經常玩CS等3D游戲的用戶;系統資源緊張用戶適用於開機後系統資源可用空間較小的用戶;多媒體愛好者適用於經常運行多媒體程序的用戶;大型軟體用戶適用於經常同時運行幾個大型程序的用戶;光碟刻錄機用戶適用於經常進行光碟刻錄的用戶;錄音設備用戶適用於經常進行音頻錄制和轉換的用戶。
CD/DVD-ROM優化。Windows優化大師根據用戶的內存大小、硬碟可用空間自動為使用者提供了最為准確的CD/DVD-ROM最佳訪問方式。對於沒有使用虛擬光碟機的用戶在設置此項目時建議將調節棒調整到「Windows優化大師推薦值」,對於虛擬光碟機用戶則必須將調節棒調整到最大值。
優化毗鄰文件和多媒體應用程序。這個選項是優化文件系統的連續毗鄰文件分配大小,選中該項可以提高多媒體文件的性能。建議選擇。設置該項前建議用戶單擊「高級」按鈕,根據自己的硬碟大小選擇合適的優化值,在選擇過程中Windows優化大師會在調節棒下方給出詳細的推薦信息,如下圖所示:
讓Win98下的DOS得到最大的物理內存。該選項提供給經常運行DOS程序的用戶。
優化CPU優先順序和延遲時間、內存快速存取和PCI/AGP匯流排並發操作:建議選擇此選項以加快CPU/內存的運算速度和打開PCI匯流排和AGP匯流排的並行數據存取。
動態鏈接庫不使用時自動移出物理內存:建議選擇該項,以便騰出更多的物理內存給其他的應用程序。
CPU空閑時自動降溫:此選項將讓操作系統在空閑時向CPU發送IDEL指令。建議選擇。
優化非同步文件傳輸:該選項將使Windows在文件提交時不檢查數據是否正確地寫入硬碟而直接返回(即採用非同步緩沖區提交方式),因此可以加快系統運行的速度。默認情況下Windows將在檢查數據提交正確無誤後才返回(即採用同步緩沖區提交方式)。由於Windows寫硬碟時出錯的幾率很小,因此建議普通用戶選擇此項。而那些對系統穩定性要求較高的用戶,請不要選擇此選項。注意:選擇「優化非同步文件傳輸」後,系統屬性中的文件系統/疑難解答中將會禁用「同步緩沖區提交」。
打開IDE硬碟的UDMA傳輸模式:建議選擇。為了系統的穩定性,WIN2K、WIN9X都沒有把硬碟的UDMA66模式打開的,這個優化項目可以幫你開啟這個模式。