- 簡(jiǎn)體
- 簡(jiǎn)體中文 English
集群網(wǎng)站建設(shè)如何提高網(wǎng)站的負(fù)載性能呢?
如何提高網(wǎng)站的負(fù)載性能。網(wǎng)站建設(shè)公司根據(jù)自己的親身經(jīng)歷總結(jié)了以下幾個(gè)方面,希望能給新手站長(zhǎng)一些幫助。
1.減少HTTP請(qǐng)求的數(shù)量
構(gòu)造請(qǐng)求和等待響應(yīng)需要時(shí)間,所以請(qǐng)求越少越好。請(qǐng)求減少的一般思想是組合資源并減少顯示一個(gè)頁(yè)面所需的文件數(shù)量?! ?/p>
1).圖像映射
通過設(shè)置標(biāo)簽的usemap屬性并使用標(biāo)簽,可以剪切圖片中的多個(gè)區(qū)域并指向不同的鏈接。與使用多個(gè)圖像分別構(gòu)建鏈接相比,減少了請(qǐng)求的數(shù)量。
2).CSS Sprite(CSS貼圖集成/貼圖展平/貼圖定位)
這是通過設(shè)置元素的背景位置樣式來實(shí)現(xiàn)的。對(duì)于一般界面圖標(biāo)。典型的可以參考TinyMCE編輯器頂部的那些小按鈕。本質(zhì)上,多個(gè)小圖是由一個(gè)統(tǒng)一的大圖通過不同的偏移量切割而成的,這樣加載界面上的很多按鈕實(shí)際上只需要請(qǐng)求一次(請(qǐng)求大圖一次),從而減少了HTTP請(qǐng)求的次數(shù)?! ?/p>
3).內(nèi)嵌圖像(內(nèi)嵌圖像)
不是在src中指定外部圖像文件的URL,而是將圖像信息直接放入。比如src = " data:image/gif;Base64,R0lGODlhDAAMAL ... "在一些特殊情況下很有用(比如一張小圖片只在當(dāng)前頁(yè)面使用)?! ?/p>
2.使用多線CDN
為您的站點(diǎn)提供多條線路(如國(guó)內(nèi)電信、聯(lián)通、移動(dòng))和多個(gè)地理位置(北、南、西)的接入,讓所有用戶都能快速訪問?! ?/p>
3.使用HTTP緩存
向不經(jīng)常更新的資源(如靜態(tài)圖)添加更長(zhǎng)的過期標(biāo)頭信息。這些資源一旦緩存,在未來很長(zhǎng)一段時(shí)間內(nèi)都不會(huì)重復(fù)傳輸?! ?/p>
4.使用Gzip壓縮
使用Gzip壓縮HTTP消息,可以減少體積和傳輸時(shí)間。
5.將樣式表放在頁(yè)面的前面
先加載樣式表,這樣頁(yè)面渲染可以更早開始,給用戶頁(yè)面加載更快的感覺?! ?/p>
6.將腳本放在頁(yè)面的末尾
同理5,頁(yè)面顯示先處理,頁(yè)面渲染早完成,腳本邏輯晚執(zhí)行,給用戶頁(yè)面加載更快的感覺?! ?/p>
7.避免CSS表達(dá)式
過于復(fù)雜的JavaScript腳本邏輯、DOM搜索和選擇操作會(huì)降低頁(yè)面處理的效率。
8.使用JavaScript和CSS作為拓展資源
這似乎違背了原則1中的合并思想,其實(shí)不然:考慮一下,每個(gè)頁(yè)面都引入了一個(gè)通用的JavaScript資源(比如jQuery或ExtJS這樣的JavaScript庫(kù))。單從頁(yè)面的性能來看,內(nèi)聯(lián)(即將JavaScript嵌入到HTML中)頁(yè)面的加載速度要快于外部(使用標(biāo)簽引入)頁(yè)面(因?yàn)樗腍TTP請(qǐng)求更少)。但是如果很多頁(yè)面都引入了這個(gè)公共的JavaScript資源,那么內(nèi)聯(lián)方案就會(huì)造成重復(fù)傳輸(因?yàn)檫@個(gè)資源嵌入在每個(gè)頁(yè)面中,所以每打開一個(gè)頁(yè)面就要傳輸一次這部分資源,造成網(wǎng)絡(luò)傳輸資源的浪費(fèi))。這個(gè)問題可以通過獨(dú)立對(duì)外利用這類資源來解決?! ?/p>
因?yàn)镴avaScript和CSS相對(duì)穩(wěn)定,所以我們可以為它們對(duì)應(yīng)的資源設(shè)置一個(gè)較長(zhǎng)的有效期(參考原則3)?! ?/p>
9.減少DNS查找
作者給出的建議是:
1).使用Keep-Alive保持聯(lián)系。
如果連接斷開,下一次將執(zhí)行DNS查找,即使相應(yīng)的域名-IP映射已被緩存,查找也需要一些時(shí)間?! ?/p>
2).減少域名
每次請(qǐng)求新域名,都需要通過DNS搜索不同的域名,DNS緩存無法發(fā)揮作用。所以要盡量在統(tǒng)一的域名下組織站點(diǎn),避免使用過多的子域?! ?/p>
10.壓縮你的JavaScript
使用JS壓縮工具來壓縮您的JavaScript。很有效果??纯磈Query的兩個(gè)不同發(fā)行版,看看它們的區(qū)別:
jQuery代碼的Http://code.jquery.com/jquery-1.6.2.js版本,230KB
Http://code.jquery.com/jquery-1.6.2.min.js壓縮的jQuery代碼(用于實(shí)際部署),89.4KB
11.盡量避免重定向
重定向是指在你實(shí)際訪問你想看的頁(yè)面之前,增加一輪額外的HTTP請(qǐng)求(客戶端發(fā)起HTTP請(qǐng)求→HTTP服務(wù)器返回重定向響應(yīng)→客戶端發(fā)起請(qǐng)求新的URL→HTTP服務(wù)器返回內(nèi)容,帶下劃線的部分是額外的請(qǐng)求),所以需要更多的時(shí)間(給人的感覺是響應(yīng)較慢)。所以除非必要,不要隨意使用重定向。幾種“必要”情況:
1).避免URL無效
舊站點(diǎn)遷移后,為了避免舊URL失效,通常會(huì)將對(duì)舊URL的請(qǐng)求重定向到新系統(tǒng)的相應(yīng)地址?! ?/p>
2).URL美化
在可讀性好的URL和實(shí)際的資源URL之間進(jìn)行轉(zhuǎn)換。比如Google Toolbar,用戶記住的是http://toolbar.google.com,一個(gè)對(duì)人類有語(yǔ)義的地址,但是很難記住http://www . Google . com/tools/Firefox/Toolbar/FT3/intl/en/index . html,真正的資源地址。所以要保留前者,把對(duì)前者的請(qǐng)求重定向到后者?! ?/p>
12.刪除重復(fù)的腳本
不要在一個(gè)頁(yè)面中重復(fù)介紹同一個(gè)腳本。例如,如果腳本B和C都依賴于A,那么在使用B和C的頁(yè)面中可能會(huì)出現(xiàn)對(duì)A的重復(fù)引用,解決方案:對(duì)于簡(jiǎn)單站點(diǎn),手動(dòng)檢查依賴關(guān)系,消除重復(fù)介紹;對(duì)于復(fù)雜的站點(diǎn),需要建立自己的依賴管理/版本控制機(jī)制。
13.小心處理電子標(biāo)簽
ETag是除Last-Modified之外的另一種HTTP緩存方式。確定資源是否已被哈希修改。但是ETag也有一些問題,比如:
1).不一致:不同的Web服務(wù)器(Apache、IIS等。)定義不同的ETag格式?! ?/p>
2).ETAG的計(jì)算是不穩(wěn)定的(由于太多的因素),例如:
1)相同的資源在不同的服務(wù)器上計(jì)算出來的etag是不同的,大型Web應(yīng)用通常由多個(gè)服務(wù)器服務(wù),導(dǎo)致客戶端在服務(wù)器A緩存的資源明顯仍然有效,但在下一個(gè)請(qǐng)求B中會(huì)因etag不同而被視為無效,導(dǎo)致相同資源的重復(fù)傳輸?! ?/p>
2)資源不變,但是ETag由于一些其他因素而變化,例如配置文件變化。直接結(jié)果就是系統(tǒng)更新后,客戶端緩存大規(guī)模失效,導(dǎo)致傳輸量大增,站點(diǎn)性能下降?! ?/p>
筆者的建議是:要么根據(jù)你的應(yīng)用特點(diǎn)改進(jìn)現(xiàn)有的ETag計(jì)算方法,要么干脆用最簡(jiǎn)單的Last-Modified代替ETag?! ?/p>
14.在Ajax中使用HTTP緩存
Ajax是一個(gè)異步請(qǐng)求,它不會(huì)阻塞你當(dāng)前的操作,當(dāng)請(qǐng)求完成后,你可以立即看到結(jié)果。然而,異步并不意味著它可以立即完成,也不意味著它需要無限長(zhǎng)的時(shí)間才能完成。因此,應(yīng)該注意Ajax請(qǐng)求的性能。很多Ajax請(qǐng)求訪問的都是一些相對(duì)穩(wěn)定的資源,所以不要忘了利用好Ajax請(qǐng)求的HTTP緩存機(jī)制。詳見原則3和原則13。
建站流程
-
網(wǎng)站需求
-
網(wǎng)站策劃方案
-
頁(yè)面設(shè)計(jì)風(fēng)格
-
確認(rèn)交付使用
-
資料錄入優(yōu)化
-
程序設(shè)計(jì)開發(fā)
-
后續(xù)跟蹤服務(wù)
-
聯(lián)系電話
010-60259772
熱門標(biāo)簽
- 網(wǎng)站建設(shè)
- 食品網(wǎng)站建設(shè)
- 微信小程序開發(fā)
- 小程序開發(fā)
- 無錫網(wǎng)站建設(shè)
- 研究所網(wǎng)站建設(shè)
- 沈陽(yáng)網(wǎng)站建設(shè)
- 廊坊網(wǎng)站建設(shè)
- 鄭州網(wǎng)站建設(shè)
- 婚紗攝影網(wǎng)站建設(shè)
- 手機(jī)端網(wǎng)站建設(shè)
- 高校網(wǎng)站制作
- 天津網(wǎng)站建設(shè)
- 教育網(wǎng)站建設(shè)
- 品牌網(wǎng)站建設(shè)
- 政府網(wǎng)站建設(shè)
- 北京網(wǎng)站建設(shè)
- 網(wǎng)站設(shè)計(jì)
- 網(wǎng)站制作
最新文章
推薦新聞
更多行業(yè)-
網(wǎng)站的形象代表著企業(yè)的網(wǎng)上品牌形象
在法律許可的范圍內(nèi),大型企業(yè)或訪問量較大的網(wǎng)站, 產(chǎn)品/服務(wù)展示顧客訪...
2012-09-27 -
鄭州網(wǎng)站建設(shè)如何讓搜索引擎喜歡它呢?
眾所周知,網(wǎng)站流量很大一部分來自搜索引擎,搜索引擎占了很大的比例。因此...
2022-01-25 -
網(wǎng)站風(fēng)格的內(nèi)涵
網(wǎng)站設(shè)計(jì)風(fēng)格(style)是指站點(diǎn)整體形象給瀏覽者的綜合感受。這個(gè)&l...
2015-01-08 -
[北京網(wǎng)站制作]PHP常用正則表達(dá)式總匯
PHP常用正則表達(dá)式總匯1.平時(shí)做網(wǎng)站經(jīng)常要用正則表達(dá)式,下面是一些講...
2011-10-23 -
英文版網(wǎng)站建設(shè)中哪些細(xì)節(jié)可以提高用戶體驗(yàn)效果?
目前,隨著英文網(wǎng)站建設(shè)的數(shù)量不斷增多之后,在同一個(gè)行業(yè)中的競(jìng)爭(zhēng)上也是比...
2020-07-27 -
如何做好網(wǎng)站的宣傳工作?
網(wǎng)站建設(shè)的目的,就是希望大家都來瀏覽。要想贏得大多數(shù)觀眾的首肯,首先就...
2017-10-02
預(yù)約專業(yè)咨詢顧問溝通!
免責(zé)聲明
非常感謝您訪問我們的網(wǎng)站。在您使用本網(wǎng)站之前,請(qǐng)您仔細(xì)閱讀本聲明的所有條款。
1、本站部分內(nèi)容來源自網(wǎng)絡(luò),涉及到的部分文章和圖片版權(quán)屬于原作者,本站轉(zhuǎn)載僅供大家學(xué)習(xí)和交流,切勿用于任何商業(yè)活動(dòng)。
2、本站不承擔(dān)用戶因使用這些資源對(duì)自己和他人造成任何形式的損失或傷害。
3、本聲明未涉及的問題參見國(guó)家有關(guān)法律法規(guī),當(dāng)本聲明與國(guó)家法律法規(guī)沖突時(shí),以國(guó)家法律法規(guī)為準(zhǔn)。
4、如果侵害了您的合法權(quán)益,請(qǐng)您及時(shí)與我們,我們會(huì)在第一時(shí)間刪除相關(guān)內(nèi)容!
聯(lián)系方式:010-60259772
電子郵件:394588593@qq.com