一级二级黄色视频刺激,成年人密视频,奇米四色77777,天天射天天干天天拍

優(yōu)惠活動(dòng) - 現(xiàn) 做網(wǎng)站 698元,推薦客服可最高返1100元
優(yōu)惠活動(dòng) - 現(xiàn) 做網(wǎng)站 698元,推薦客服可最高返1100元
優(yōu)惠活動(dòng) - 現(xiàn) 做網(wǎng)站 698元,推薦客服可最高返1100元

平頂山優(yōu)化Web網(wǎng)站性能的流程

日期 : 2025-06-19  瀏覽:

導(dǎo)讀簡(jiǎn)介描述:一、前端優(yōu)化網(wǎng)站性能優(yōu)化是一個(gè)很綜合的話題,涉及到服務(wù)器的配置和網(wǎng)站前后端程序等各個(gè)方面,我只是從實(shí)際經(jīng)歷出發(fā),分享一下自己所嘗試過的網(wǎng)站性能優(yōu)化方法。之所以在標(biāo)題上掛一個(gè)web2.0,是因?yàn)楸疚母赜谥行【W(wǎng)站的性能優(yōu)化,我所使用的系統(tǒng)也是典型web2.0的lamp架構(gòu)。首先講講前端的優(yōu)化,用戶訪問網(wǎng)頁的等待時(shí)間,有80%是發(fā)生在瀏覽器前端,特別是頁面和頁面中各種元素(圖片、css、javascript、flash…)的下載之上。因此在很多情況下,相對(duì)于把大量的時(shí)間花在艱苦而繁雜的程序改進(jìn)上,前端的優(yōu)化往往能起到事半功倍的作用。雅虎最近將內(nèi)部使用的性能測(cè)試工具yslow向第三方公開,并發(fā)布了著名的網(wǎng)站性能優(yōu)化的十三條規(guī)則,建議你下載

標(biāo)簽: 海鑫網(wǎng)絡(luò) 平頂山網(wǎng)站建設(shè) 文件 優(yōu)化 服務(wù)器 頁面 緩存 js

個(gè)人/平頂山企業(yè)網(wǎng)站建設(shè):698元,聯(lián)系電話:15093778828
更多平頂山網(wǎng)站建設(shè) 平頂山商城系統(tǒng)程序 平頂山定制程序開發(fā)需求請(qǐng)咨詢在線客服!

一、前端優(yōu)化

網(wǎng)站性能優(yōu)化是一個(gè)很綜合的話題,涉及到服務(wù)器的配置和網(wǎng)站前后端程序等各個(gè)方面,我只是從實(shí)際經(jīng)歷出發(fā),分享一下自己所嘗試過的網(wǎng)站性能優(yōu)化方法。之所以在標(biāo)題上掛一個(gè)web2.0,是因?yàn)楸疚母赜谥行【W(wǎng)站的性能優(yōu)化,我所使用的系統(tǒng)也是典型web2.0的lamp架構(gòu)。

首先講講前端的優(yōu)化,用戶訪問網(wǎng)頁的等待時(shí)間,有80%是發(fā)生在瀏覽器前端,特別是頁面和頁面中各種元素(圖片、css、javascript、 flash…)的下載之上。因此在很多情況下,相對(duì)于把大量的時(shí)間花在艱苦而繁雜的程序改進(jìn)上,前端的優(yōu)化往往能起到事半功倍的作用。雅虎最近將內(nèi)部使用的性能測(cè)試工具yslow向第三方公開,并發(fā)布了著名的網(wǎng)站性能優(yōu)化的十三條規(guī)則,建議你下載并安裝yslow,并作為測(cè)評(píng)網(wǎng)站優(yōu)化效果的工具。下面我挑其中特別有價(jià)值的具體說明一下優(yōu)化的方法:

對(duì)于第一次訪問您網(wǎng)站,尚未在瀏覽器cache中緩存您網(wǎng)站內(nèi)容的用戶,我們可以做的事情包括:

1)減少一個(gè)頁面訪問所產(chǎn)生的http連接次數(shù)
對(duì)于第一次訪問你網(wǎng)站的用戶,頁面所產(chǎn)生的http連接次數(shù)是影響性能的一個(gè)關(guān)鍵瓶頸。

對(duì)策:
- 盡量簡(jiǎn)潔的頁面設(shè)計(jì),最大程度減少圖片的使用,通過放棄一些不必要的頁面特效來減少javascript的使用。
- 使用一些優(yōu)化技巧,比如利用圖片的背景位移減少圖片的個(gè)數(shù);image map技術(shù);使用inline images將css圖片捆綁到網(wǎng)頁中。
- 盡量合并js和css文件,減少獨(dú)立文件個(gè)數(shù)。

2) 使用gzip壓縮網(wǎng)頁內(nèi)容
使用gzip來壓縮網(wǎng)頁中的靜態(tài)內(nèi)容,能夠顯著減少用戶訪問網(wǎng)頁時(shí)的等待時(shí)間(據(jù)說可達(dá)到60%)。主流的web服務(wù)器都支持或提供gzip壓縮,如果使用apache服務(wù)器,只需要在配置文件中開啟 mod_gzip(apache1.x)或mod_deflate(apache2.x)即可。凡是靜態(tài)的頁面,使用gzip壓縮都能夠顯著提高服務(wù)器效率并減少帶寬支出,注意圖片內(nèi)容本身已經(jīng)是壓縮格式了,務(wù)必不要再進(jìn)行壓縮。

3)將css放在頁面頂端,js文件放在頁面底端
css的引用要放在html的頭部header中,js文件引用盡量放在頁面底端標(biāo)簽的后面,主要的思路是讓核心的頁面內(nèi)容盡早顯示出來。不過要注意,一些大量使用js的頁面,可能有一些js文件放在底端會(huì)引起一些難以預(yù)料的問題,根據(jù)實(shí)際情況適當(dāng)運(yùn)用即可。

4)使js文件內(nèi)容最小化
具體來說就是使用一些javascript壓縮工具對(duì)js腳本進(jìn)行壓縮,去除其中的空白字符、注釋,最小化變量名等。在使用gzip壓縮的基礎(chǔ)上,對(duì)js內(nèi)容的壓縮能夠?qū)⑿阅茉偬岣?%。

5)盡量減少外部腳本的使用,減少dns查詢時(shí)間
不要在網(wǎng)頁中引用太多的外部腳本,首先,一次dns的解析過程會(huì)消耗20-120毫秒的時(shí)間;其次,如果在頁面中引用太多的外部文件(如各種廣告、聯(lián)盟等代碼),可能會(huì)因?yàn)橥獠课募捻憫?yīng)速度而將你的網(wǎng)站拖得很慢。如果不得不用,那么就盡量將這些腳本放在頁腳吧。不過有一點(diǎn)需要提及,就是瀏覽器一般只能并行處理同一域名下的兩個(gè)請(qǐng)求,而對(duì)于不同子的域名則不受此限制,因此適當(dāng)將本站靜態(tài)內(nèi)容(css,js)放在其他的子域名下(如 static.xxx.com)會(huì)有利于提高瀏覽器并行下載網(wǎng)頁內(nèi)容的能力。

對(duì)于您網(wǎng)站的經(jīng)常性訪問用戶,主要的優(yōu)化思路就是最大限度利用用戶瀏覽器的cache來減少服務(wù)器的開銷。

1)在header中添加過期時(shí)間(expires header)
在header中給靜態(tài)內(nèi)容添加一個(gè)較長(zhǎng)的過期時(shí)間,這樣可以使用戶今后訪問只讀取緩存中的文件,而不會(huì)與服務(wù)器產(chǎn)生任何的交互。不過這樣做也存在一些問題,當(dāng)圖片、css和js文件更新時(shí),用戶如果不刷新瀏覽器,就無法獲得此更新。這樣,我們?cè)趯?duì)圖片、css和js文件修改時(shí),必須要進(jìn)行重命名,才能保證用戶訪問到最新的內(nèi)容。這可能會(huì)給開發(fā)造成不小的麻煩,因?yàn)檫@些文件可能被站點(diǎn)中的許多文件所引用。flickr提出的解決辦法是通過url rewrite使不同版本號(hào)的url事實(shí)上指向同一個(gè)文件,這是一個(gè)聰明的辦法,因?yàn)閡rl級(jí)別的操作效率是很高的,可以給開發(fā)過程提供不少便利。

要理解為什么這樣做,必須要了解瀏覽器訪問url時(shí)的工作機(jī)制:
a. 第一次訪問url時(shí),用戶從服務(wù)器段獲取頁面內(nèi)容,并把相關(guān)的文件(images,css,js…)放在高速緩存中,也會(huì)把文件頭中的expired time,last modified, etags等相關(guān)信息也一同保留下來。
b. 用戶重復(fù)訪問url時(shí),瀏覽器首先看高速緩存中是否有本站同名的文件,如果有,則檢查文件的過期時(shí)間;如果尚未過期,則直接從緩存中讀取文件,不再訪問服務(wù)器。
c. 如果緩存中文件的過期時(shí)間不存在或已超出,則瀏覽器會(huì)訪問服務(wù)器獲取文件的頭信息,檢查last modifed和etags等信息,如果發(fā)現(xiàn)本地緩存中的文件在上次訪問后沒被修改,則使用本地緩存中的文件;如果修改過,則從服務(wù)器上獲取最新版本。

我的經(jīng)驗(yàn),如果可能,盡量遵循此原則給靜態(tài)文件添加過期時(shí)間,這樣可以大幅度減少用戶對(duì)服務(wù)器資源的重復(fù)訪問。

2)將css和js文件放在獨(dú)立外部文件中引用
將css和js文件放在獨(dú)立文件中,這樣它們會(huì)被單獨(dú)緩存起來,在訪問其他頁面時(shí)可以從瀏覽器的高速緩存中直接讀取。一些網(wǎng)站的首頁可能是例外的,這些首頁的自身瀏覽可能并不大,但卻是用戶訪問網(wǎng)站的第一印象以及導(dǎo)向到其他頁面的起點(diǎn),也可能這些頁面本身使用了大量的ajax局部刷新及技術(shù),這時(shí)可以將 css和js文件直接寫在頁面中。

3)去掉重復(fù)的腳本
在ie中,包含重復(fù)的js腳本會(huì)導(dǎo)致瀏覽器的緩存不被使用,仔細(xì)檢查一下你的程序,去掉重復(fù)引用的腳本應(yīng)該不是一件很難的事情。

4)避免重定向的發(fā)生
除了在header中人為的重定向之外,網(wǎng)頁重定向常在不經(jīng)意間發(fā)生,被重定向的內(nèi)容將不會(huì)使用瀏覽器的緩存。比如用戶在訪問www.xxx.com,服務(wù)器會(huì)通過301轉(zhuǎn)向到www.xxx.com/,在后面加了一個(gè)“/”。如果服務(wù)器的配置不好,這也會(huì)給服務(wù)器帶來額外的負(fù)擔(dān)。通過配置apache的 alias或使用mod_rewrite模塊等方法,可以避免不必要的重定向。

還有一些,比如使用cdn分發(fā)機(jī)制、避免css表達(dá)式等、避免使用etags等,因?yàn)椴惶S?,這里就不再贅述了。

做完了上述的優(yōu)化,可以試著用yslow測(cè)試一下網(wǎng)頁的性能評(píng)分,一般都可以達(dá)到70分以上了。

當(dāng)然,除了瀏覽器前端和靜態(tài)內(nèi)容的優(yōu)化之外,還有針對(duì)程序腳本、服務(wù)器、數(shù)據(jù)庫(kù)、負(fù)載的優(yōu)化,這些更深層次的優(yōu)化方法對(duì)技術(shù)有更高的要求。本文的后半部分將重點(diǎn)探討后端的優(yōu)化。

二、后端優(yōu)化

上次寫完web2.0網(wǎng)站前端優(yōu)化篇之后,一直想寫寫后端優(yōu)化的方法,今天終于有時(shí)間將思路整理了出來。

前端優(yōu)化可以避免我們?cè)斐蔁o謂的服務(wù)器和帶寬資源浪費(fèi),但隨著網(wǎng)站訪問量的增加,僅靠前端優(yōu)化已經(jīng)不能解決所有問題了,后端軟件處理并行請(qǐng)求的能力、程序運(yùn) 行的效率、硬件性能以及系統(tǒng)的可擴(kuò)展性,將成為影響網(wǎng)站性能和穩(wěn)定的關(guān)鍵瓶頸所在。優(yōu)化系統(tǒng)和程序的性能可以從以下的方面來入手:

1)apache、mysql等軟件的配置的優(yōu)化
盡管apache和mysql等軟件在安裝后使用的默認(rèn)設(shè)置足以使你的網(wǎng)站運(yùn)行起來,但是通過調(diào)整mysql和apache的一些系統(tǒng)參數(shù),還是可以追求更高的效率和穩(wěn)定性。這個(gè)領(lǐng)域中有很多專業(yè)的文章和論壇(比如: http://www.mysqlperformanceblog.com/),要想掌握也需要進(jìn)行深入的研究和實(shí)踐,這里就不重點(diǎn)討論了。

2)應(yīng)用程序環(huán)境加速
這里僅以我最常應(yīng)用的php開發(fā)環(huán)境為例,有一些工具軟件可以通過優(yōu)化php運(yùn)行環(huán)境來達(dá)到提速的目的,其基本原理大致是將php代碼預(yù)編譯并緩存起來,而不需要改變?nèi)魏未a,所以比較簡(jiǎn)單,可以將php的運(yùn)行效率提升50%以上。比較常用的免費(fèi)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),還有收費(fèi)的zend performance suite

3)將靜態(tài)內(nèi)容和動(dòng)態(tài)內(nèi)容分開處理
apache是一個(gè)功能完善但比較龐大的web server,它的資源占用基本上和同時(shí)運(yùn)行的進(jìn)程數(shù)呈正比,對(duì)服務(wù)器內(nèi)存的消耗比較大,處理并行任務(wù)的效率也一般。在一些情況下,我們可以用比較輕量級(jí)的web server來host靜態(tài)的圖片、樣式表和javascript文件,這樣可以大大提升靜態(tài)文件的處理速度,還可以減少對(duì)內(nèi)存占用。我使用的web server是來自俄羅斯的nginx,其他選擇方案還包括lighttpd和thttpd等。

4)基于反向代理的前端訪問負(fù)載均衡
當(dāng)一臺(tái)前端服務(wù)器不足以應(yīng)付用戶訪問時(shí),通過前端機(jī)實(shí)現(xiàn)web訪問的負(fù)載均衡是最快速可行的方案。通過apache的mod_proxy可以實(shí)現(xiàn)基于反向代理的負(fù)載均衡,這里推薦使用nginx做代理服務(wù)器,處理速度較apache更快一些。

5)應(yīng)用緩存技術(shù)提高數(shù)據(jù)庫(kù)效能,文件緩存和分布式緩存
數(shù)據(jù)庫(kù)訪問處理并發(fā)訪問的能力是很多網(wǎng)站應(yīng)用的關(guān)鍵瓶頸,在想到使用主從結(jié)構(gòu)和多farm的方式構(gòu)建服務(wù)器集群之前,首先應(yīng)該確保充分使用了數(shù)據(jù)庫(kù)查詢的緩存。一些數(shù)據(jù)庫(kù)類型(如mysql的innodb)自身內(nèi)置對(duì)緩存的支持,此外,還可以利用程序方法將常用的查詢通過文件或內(nèi)存緩存起來。比如通過 php中的ob_start和文件讀寫函數(shù)可以很方便的實(shí)現(xiàn)文件形式的緩存,而如果你擁有多臺(tái)服務(wù)器,可以通過memcache技術(shù)通過分布式共享內(nèi)存來對(duì)數(shù)據(jù)庫(kù)查詢進(jìn)行緩存,不僅效率高而且擴(kuò)展性好,memcache技術(shù)在livejournal和craigslist.org等知名網(wǎng)站應(yīng)用中都得到了檢驗(yàn)。

6)服務(wù)器運(yùn)行狀態(tài)的檢測(cè),找到影響性能的瓶頸所在
系統(tǒng)優(yōu)化沒有一勞永逸的方法,需要通過檢測(cè)服務(wù)器的運(yùn)行狀態(tài)來及時(shí)發(fā)現(xiàn)影響性能的瓶頸,以及可能存在的潛在問題,因?yàn)榫W(wǎng)站的性能,永遠(yuǎn)取決于木桶中的短板。可以編寫一些腳本來檢測(cè)web服務(wù)的運(yùn)行,也有一些開源的軟件也提供了很好的功能

7)良好的擴(kuò)展架構(gòu)是穩(wěn)定和性能的基礎(chǔ)
一些技巧和竅門可以幫你度過眼前的難關(guān),但要想使網(wǎng)站具備應(yīng)付大規(guī)模訪問的能力,則需要從系統(tǒng)架構(gòu)上進(jìn)行徹底的規(guī)劃,好在很多前人無私的把他們架構(gòu)
網(wǎng)站的經(jīng)驗(yàn)分享給我們,使我們可以少走甚多彎路。我最近讀到的兩篇有啟發(fā)的文章:
- 從livejournal后臺(tái)發(fā)展看大規(guī)模網(wǎng)站性能優(yōu)化方法
- myspace的六次重構(gòu)

最后不得不提到程序編碼和數(shù)據(jù)庫(kù)結(jié)構(gòu)對(duì)性能的影響,一系列糟糕的循環(huán)語句,一個(gè)不合理的查詢語句、一張?jiān)O(shè)計(jì)不佳的數(shù)據(jù)表或索引表,都足以會(huì)使應(yīng)用程序運(yùn)行的速度成倍的降低。培養(yǎng)全局思考的能力,養(yǎng)成良好的編程習(xí)慣,并對(duì)數(shù)據(jù)庫(kù)運(yùn)行機(jī)制有所了解,是提高編程質(zhì)量的基礎(chǔ)。


個(gè)人/平頂山企業(yè)網(wǎng)站建設(shè):698元,聯(lián)系電話:15093778828
更多平頂山網(wǎng)站建設(shè) 平頂山商城系統(tǒng)程序 平頂山定制程序開發(fā)需求請(qǐng)咨詢在線客服!

本文地址:www.streetbeauty.cn/websitepingdingshan/college/419.html
如沒特殊注明,文章均為海鑫網(wǎng)絡(luò)原創(chuàng)
轉(zhuǎn)載請(qǐng)注明來自:www.streetbeauty.cn

最新合作客戶推薦
在這茫茫的網(wǎng)絡(luò)里,網(wǎng)絡(luò)讓我們相遇
歷經(jīng)13年行業(yè)經(jīng)驗(yàn),加上網(wǎng)絡(luò)的推送
足以證明我們的堅(jiān)持,努力、實(shí)力和可信
或許我們是初次相遇,但絕不能擦肩而過
讓彼此加上微信,以備后續(xù)之需
更希望我們攜手,彼此走的更遠(yuǎn)
關(guān) 閉