http頁(yè)面緩存機(jī)制

http頁(yè)面緩存機(jī)制

ID:15027009

大小:409.00 KB

頁(yè)數(shù):11頁(yè)

時(shí)間:2018-07-31

http頁(yè)面緩存機(jī)制_第1頁(yè)
http頁(yè)面緩存機(jī)制_第2頁(yè)
http頁(yè)面緩存機(jī)制_第3頁(yè)
http頁(yè)面緩存機(jī)制_第4頁(yè)
http頁(yè)面緩存機(jī)制_第5頁(yè)
資源描述:

《http頁(yè)面緩存機(jī)制》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、改善Web2.0應(yīng)用程序的性能探秘不同的瀏覽器端緩存機(jī)制JianQiaoSun,軟件工程師,IBMHuaPinShen,顧問(wèn)軟件工程師,IBM簡(jiǎn)介:?隨著Web2.0應(yīng)用程序的出現(xiàn)和流行,人們使用Internet的方式已經(jīng)悄然改變?,F(xiàn)在,這些Web2.0應(yīng)用程序擁有許多典型的特征,包括擁有富客戶端、大頁(yè)面、包含許多小項(xiàng)目的頁(yè)面、大量的JavaScript編碼等等。鑒于目前的瀏覽器技術(shù),大部分這些特征都會(huì)導(dǎo)致瀏覽器端性能問(wèn)題,特別是在長(zhǎng)距離網(wǎng)絡(luò)中。本文將分析典型Web2.0應(yīng)用程序的關(guān)鍵方面,并介紹它們?nèi)绾斡绊憺g覽器端性能。本文還將檢查瀏覽器端性能的一個(gè)非

2、常重要的部分——瀏覽器端緩存。發(fā)布日期:?2010年2月25日?級(jí)別:?中級(jí)?其他語(yǔ)言版本:?英文?平均分(共2個(gè)評(píng)分)簡(jiǎn)介隨著Web2.0應(yīng)用程序的出現(xiàn)和流行,Internet的使用方式已經(jīng)發(fā)生改變,出現(xiàn)了一種新趨勢(shì):針對(duì)內(nèi)容管理、信息共享、通信、團(tuán)隊(duì)合作等創(chuàng)建一種更加以用戶為中心的方法。從技術(shù)角度看,Web2.0應(yīng)用程序并沒有帶來(lái)很多新的技術(shù)突破。但是,這些應(yīng)用程序的確帶來(lái)了一種新的Internet使用模式?,F(xiàn)在,Web2.0應(yīng)用程序擁有許多典型特征,包括擁有富客戶端、大頁(yè)面、包含許多小項(xiàng)目的頁(yè)面、大量的JavaScript編碼等等。這些特征會(huì)導(dǎo)致瀏

3、覽器端性能問(wèn)題,特別是在長(zhǎng)距離網(wǎng)絡(luò)中。這些性能問(wèn)題會(huì)對(duì)用戶體驗(yàn)造成不利影響,但您甚至不會(huì)意識(shí)到這些問(wèn)題的存在。由于開發(fā)人員擁有很好的網(wǎng)絡(luò)條件,因此這些性能問(wèn)題很難完全暴露出來(lái)。本文將首先分析典型的Web2.0應(yīng)用程序的關(guān)鍵方面,解釋它們?nèi)绾斡绊憺g覽器端性能。然后,本文介紹瀏覽器端性能的一個(gè)非常重要的部分——瀏覽器緩存。通過(guò)使用適當(dāng)?shù)木彺嬖O(shè)置,您可以向用戶提供較好的應(yīng)用程序體驗(yàn)。如果您沒有一個(gè)整體緩存策略設(shè)計(jì),那么您的緩存策略不僅會(huì)導(dǎo)致低劣的性能,還會(huì)引發(fā)一些功能缺陷。有許多影響瀏覽器緩存的規(guī)則,其中的部分規(guī)則包括Cache-Control、Etag、Ex

4、pires、Last-Modified和Vary。所有這些設(shè)置擁有不同的含義和最適用的情形。困難之處在于對(duì)于相同的設(shè)置,并不是所有流行瀏覽器都擁有相同的行為。因此,在您決定使用這些設(shè)置之前,您應(yīng)該準(zhǔn)確了解這些瀏覽器是如何工作的。本文將檢查目前市面上最流行的瀏覽器的行為:InternetExplorer、Firefox、Chrome和Safari。在本文中,我們還使用IBM?Mashups和開源“RollerWeblogger”來(lái)提供一些示例,展示如何應(yīng)用不同的指令以最好地使用瀏覽器緩存。背景在當(dāng)今的Internet環(huán)境中,Web2.0應(yīng)用程序正在變得越來(lái)

5、越流行。許多Web站點(diǎn)都使用Web2.0構(gòu)建,比如Facebook、Youtube等。IBM也有Web2.0應(yīng)用程序,比如LotusConnections和LotusMashups。以下是一種用于計(jì)算瀏覽器響應(yīng)時(shí)間的基本方法:·瀏覽器響應(yīng)時(shí)間=服務(wù)器端時(shí)間+頁(yè)面加載時(shí)間+瀏覽器呈現(xiàn)時(shí)間·頁(yè)面加載時(shí)間=(請(qǐng)求數(shù)/并發(fā)數(shù))*延遲時(shí)間+頁(yè)面總大小/帶寬在上述等式中:·“服務(wù)器端時(shí)間”是指服務(wù)器端處理所花費(fèi)的時(shí)間,比如通過(guò)LDAP驗(yàn)證和從數(shù)據(jù)庫(kù)檢索信息。·“瀏覽器呈現(xiàn)時(shí)間”是指瀏覽器呈現(xiàn)頁(yè)面所花費(fèi)的時(shí)間,包括執(zhí)行JavaScript和解析DOM樹的時(shí)間?!ぁ罢?qǐng)求

6、數(shù)”是指HTTP請(qǐng)求的數(shù)量。·“并發(fā)數(shù)”是指瀏覽器與服務(wù)器之間的并行連接的數(shù)量。·“頁(yè)面總大小”是指一個(gè)頁(yè)面的完整大小?!ぁ把舆t時(shí)間”和“帶寬”是網(wǎng)絡(luò)狀態(tài)指標(biāo)。在常見的長(zhǎng)距離網(wǎng)絡(luò)環(huán)境中,帶寬大約為1M,延遲時(shí)間大約為100毫秒。因此,減少到100KB或減少為一個(gè)請(qǐng)求能夠節(jié)約0.1秒響應(yīng)時(shí)間。請(qǐng)注意一點(diǎn),鑒于真實(shí)環(huán)境的復(fù)雜性,這個(gè)等式可能不能涵蓋所有情形。在一個(gè)典型的Web2.0富Internet應(yīng)用程序(例如LotusMashupMaker)中,瀏覽器首先發(fā)送格式定義請(qǐng)求到服務(wù)器。接收到定義響應(yīng)數(shù)據(jù)后,瀏覽器向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求。然后,瀏覽器對(duì)用戶呈現(xiàn)頁(yè)

7、面。在這種模式中,有大量的小項(xiàng)目請(qǐng)求,比如JavaScript文件、CSS文件等。在長(zhǎng)距離網(wǎng)絡(luò)環(huán)境中,這會(huì)導(dǎo)致嚴(yán)重影響用戶體驗(yàn)的客戶端性能問(wèn)題。大多數(shù)文件是可以被緩存的靜態(tài)文件,因此,如果您添加適當(dāng)?shù)木彺婵丶?、expiry頭部以及其他影響瀏覽器緩存的頭部元數(shù)據(jù),就可以明顯改善用戶體驗(yàn)。瀏覽器緩存機(jī)制有幾個(gè)影響瀏覽器緩存的規(guī)則,這個(gè)小節(jié)將分別討論它們。Cache-ControlCache-Control是最重要的規(guī)則。這個(gè)字段用于指定所有緩存機(jī)制在整個(gè)請(qǐng)求/響應(yīng)鏈中必須服從的指令。這些指令指定用于阻止緩存對(duì)請(qǐng)求或響應(yīng)造成不利干擾的行為。這些指令通常覆蓋默認(rèn)

8、緩存算法。緩存指令是單向的,即請(qǐng)求中存在一個(gè)指令并不意味著響應(yīng)中將存在同一個(gè)指令

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。