當前位置:首頁 » 文件管理 » http緩存機制

http緩存機制

發布時間: 2022-01-07 23:45:06

java、IE 緩存機制

是的Ie有緩存,如果不清理的話,會存在一段時間。有時關閉瀏覽器,再重新打開就可以清除緩存,具體緩存多長時間還沒研究過。

php的緩存機制有哪些

主要有:
①普遍緩存技術②頁面緩存③時間觸發緩存④內容觸發緩存⑤靜態緩存(就生成html文件)
⑥內存緩存⑦php的緩沖器⑧MYsql緩存⑨基於反向代理的Web緩存,DNS輪詢
但是一般常用的就 ①②④,其他的是網站數據量大,交互多,為減小伺服器壓力才用到
參考資料:http://blog.163.com/yuzhongfeiyan338@126/blog/static/38688323200981604944905/

Ⅲ HTTP的主要作用是什麼

1、客戶與伺服器建立連接;

2、客戶向伺服器提出請求;

3、伺服器接受請求,並根據請求返回相應的文件作為應答;

4、客戶與伺服器關閉連接。

HTTP的性質:

1、HTTP是一種無狀態協議,即伺服器不保留與客戶交易時的任何狀態。這就大大減輕了伺服器記憶負擔,從而保持較快的響應速度。

2、HTTP是一種面向對象的協議。允許傳送任意類型的數據對象。它通過數據類型和長度來標識所傳送的數據內容和大小,並允許對數據進行壓縮傳送。

(3)http緩存機制擴展閱讀

http代理的作用:

1、突破自身IP訪問限制,訪問國外站點。如:教育網、169網等網路用戶可以通過代理訪問國外網站。

2、訪問一些單位或團體內部資源,如某大學FTP(前提是該代理地址在該資源的允許訪問范圍之內),使用教育網內地址段免費代理伺服器,就可以用於對教育 網開放的各類FTP下載上傳,以及各類資料查詢共享等服務。

3、隱藏真實IP:上網者也可以通過這種方法隱藏自己的IP,免受攻擊。

參考資料來源:網路-http

Ⅳ http協議的詳細描述

HTTP的早期版本為HTTP/0.9,它適用於各種數據信息的簡潔快速協議,但是其遠不能滿足日益發展各種應用的需要。但HTTP/0.9作為HTTP協議具有典型的無狀態性:每個事務都是獨立進行處理的,當一個事務開始就在客戶與伺服器之間建立一個連接,當事務結束時就釋放這個連接。HTTP/0.9包含
Simple-Request&Simple-Responsed的報文結構。但是客戶無法使用內容協商,所以伺服器也無法返回實體的媒體類型。
1982年,Tim Berners-Lee提出了HTTP/1.0,在此後的不斷豐富和發展中,HTTP/1.0成為最重要的面向事務的應用層協議。該協議對每一次請求/響應,建立並拆除一次連接。其特點是簡單、易於管理,所以它符合了大家的需要,得到了廣泛的應用。其缺點是仍會發生下列問題:對用戶請求響應慢、網路擁塞嚴重、安全性等。
1997年形成的HTTP/1.1,也就是現在普遍使用的協議,在持續連接操作機制中實現流水方式,即客戶端需要對同一伺服器發出多個請求時,其實現在多數的網頁都是有多部分組成(比如多張圖片),可用流水線方式加快速度,流水機制就是指連續發出多個請求並等到這些請求發送完畢,再等待響應。這樣就大大節省了單獨請求對響應的等待時間,使我們得到更快速的瀏覽。
另外,HTTP/1.1伺服器端處理請求時按照收到的順序進行,這就保證了傳輸的正確性。當然,伺服器端在發生連接中斷時,會自動的重傳請求,保證數據的完整性。
HTTP/1.1還提供了身份認證、狀態管理和Cache緩存等機制。這里,我想特別提一下關於HTTP/1.1中的Cache緩存機制對HTTP/1.0的不足之處的改進,它嚴格全面,既可以減少時間延遲、又節省了帶寬。HTTP/1.1採用了內容協商機制,選擇最合適的用戶的內容表現形式。
現在,很多地方都有用到的虛擬主機技術在HTTP/1.1中也可以實現。所謂的虛擬主機技術,就是同一主機地址實際對應多台主機。通俗的講,當你同時在一個網站申請兩個主頁時,用協議分析儀可以發現其實這兩個主頁對應的是同一個IP地址。這樣用多台完全相同的機器形成WWW伺服器就可以提高處理的吞吐量。
傳統的解決方案是改造域名伺服器使其可以根據一定的演算法將同一域名解釋成不同的IP地址。分別對應虛擬主機的每台機器,其缺點是要求每台機器佔用完全獨立的IP地址,這與IP地址的缺乏是相矛盾的。
HTTP/1.1提供的解決方案在HTTP協議自身中加入了指定不同主機的功能,從而多台主機可以共享一個IP地址,既提高了性能又便於管理。
因為HTTP/1.1是Internet現行的標准協議,這里詳細介紹其相關語法。
首先,HTTP/1.1格式可寫為:
[img:8d94cc43ef]http://www.china-pub.com/computers/emook/0472/1.gif[/img:8d94cc43ef]

其中請求方法是請求一定的Web頁面的程序或用於特定的URL。可選用下列幾種:
GET: 請求指定的頁面信息,並返回實體主體。
HEAD: 只請求頁面的首部。
POST: 請求伺服器接受所指定的文檔作為對所標識的URI的新的從屬實體。
PUT: 從客戶端向伺服器傳送的數據取代指定的文檔的內容。
DELETE: 請求伺服器刪除指定的頁面。
OPTIONS: 允許客戶端查看伺服器的性能。
TRACE: 請求伺服器在響應中的實體主體部分返回所得到的內容。
PATCH: 實體中包含一個表,表中說明與該URI所表示的原內容的區別。
MOVE: 請求伺服器將指定的頁面移至另一個網路地址。
COPY: 請求伺服器將指定的頁面拷貝至另一個網路地址。
LINK: 請求伺服器建立鏈接關系。
UNLINK: 斷開鏈接關系。
WRAPPED: 允許客戶端發送經過封裝的請求。
Extension-mothed:在不改動協議的前提下,可增加另外的方法。
比如:
GET /index.html HTTP/1.1
Accept: text/plain /*純ASCII碼文本文件*/
Accept: text/html /*HTML文本文件*/
User-Agent:Mozilla/4.5(WinNT)
說明瀏覽器使用Get方法請求文檔/index.html。瀏覽器則只允許接收純ASCII碼文本文件和HTML文本文件,其使用的引擎是Mozilla/4.5(Netscape)。

當伺服器響應時,其狀態行的信息為HTTP的版本號,狀態碼,及解釋狀態碼的簡單說明。現將5類狀態碼詳細列出:
① 客戶方錯誤
100 繼續
101 交換協議
② 成功
200 OK
201 已創建
202 接收
203 非認證信息
204 無內容
205 重置內容
206 部分內容
③ 重定向
300 多路選擇
301 永久轉移
302 暫時轉移
303 參見其它
304 未修改(Not Modified)
305 使用代理
④ 客戶方錯誤
400 錯誤請求(Bad Request)
401 未認證
402 需要付費
403 禁止(Forbidden)
404 未找到(Not Found)
405 方法不允許
406 不接受
407 需要代理認證
408 請求超時
409 沖突
410 失敗
411 需要長度
412 條件失敗
413 請求實體太大
414 請求URI太長
415 不支持媒體類型
⑤ 伺服器錯誤
500 伺服器內部錯誤
501 未實現(Not Implemented)
502 網關失敗
504 網關超時
505 HTTP版本不支持
比如:(在《TELNET……》一文中用telnet登陸80埠,相同的方法用在HTTP/1.1中,會發現沒有顯示,下面補充說明之)
telnet www.fudan.e.cn 80
HEAD / HTTP/1.1
host:www.fudan.e.cn /*本行為輸入內容*/
HTTP/1.1 501 Method Not Implemented
Date: Web, 01 Nov 2000 07:12:29 GMT /*當前的日期/時間*/
Server: Apache/1.3.12 (Unix) /*Web伺服器信息*/
Allow: GET, HEAD, OPTION, TRACE /*支持的方法類型*/
Connection: close
Connect-Type: Text/html; charset=iso-8859-1/*連接的媒體類型*/

<!DOCTYPE HTML PUBLIG "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>501 Method
Not Implemented</TITLE>
</HEAD><BODY>
<H1>Method Not Implemented</H1>
head to /inde
x.html not supported.<P>
Invalid method in request head / htp/1.1<P>
<HR>
<ADDRESS>
Apache/1.3.12 Server at www.fudan.e.cn Port 80</ADDRESS>
</BODY></HTML>
關於實體頭部的內容還可以有:
Last Modified :請求文檔的最近修改時間。
Expires :請求文檔的過期時間。
Connect-length:文檔數據的長度。
WWW-authenricate:通知客戶端需要的認證信息。
Connect-encoding :說明有無使用壓縮技術。
Transfer-encoding :說明採用的編碼變換類型。

隨著Internet的發展,下一代的HTTP協議HTTP-ng已經在醞釀之中,它將會提供更好的安全性、更快的速度,其改進要點為:模塊化強、網路效率高、安全性更好、結構更簡單。

Ⅳ angularjs 頁面刷新後 http緩存還在嗎

.state('test', {

url: '/test',
cache:'false',
templateUrl: 'templates/test.html',
controller: 'testCtrl'
})

Ⅵ 什麼叫做緩存機制

緩存是介於應用程序和物理數據源之間,其作用是為了降低應用程序對物理數據源訪問的頻次,從而提高了應用的運行性能。緩存內的數據是對物理數據源中的數據的復制,應用程序在運行時從緩存讀寫數據,在特定的時刻或事件會同步緩存和物理數據源的數據。
緩存的介質一般是內存,所以讀寫速度很快。但如果緩存中存放的數據量非常大時,也會用硬碟作為緩存介質。緩存的實現不僅僅要考慮存儲的介質,還要考慮到管理緩存的並發訪問和緩存數據的生命周期。
Hibernate的緩存包括Session的緩存和SessionFactory的緩存,其中SessionFactory的緩存又可以分為兩類:內置緩存和外置緩存。Session的緩存是內置的,不能被卸載,也被稱為Hibernate的第一級緩存。SessionFactory的內置緩存和Session的緩存在實現方式上比較相似,前者是SessionFactory對象的一些集合屬性包含的數據,後者是指Session的一些集合屬性包含的數據。SessionFactory的內置緩存中存放了映射元數據和預定義SQL語句,映射元數據是映射文件中數據的拷貝,而預定義SQL語句是在Hibernate初始化階段根據映射元數據推導出來,SessionFactory的內置緩存是只讀的,應用程序不能修改緩存中的映射元數據和預定義SQL語句,因此SessionFactory不需要進行內置緩存與映射文件的同步。SessionFactory的外置緩存是一個可配置的插件。在默認情況下,SessionFactory不會啟用這個插件。外置緩存的數據是資料庫數據的拷貝,外置緩存的介質可以是內存或者硬碟。SessionFactory的外置緩存也被稱為Hibernate的第二級緩存。

Ⅶ web緩存有哪幾種方式

1 應用程序實現的動態頁面緩存
應用程序把動態文件生成的html文件緩存到文件伺服器,以後用戶請求動態文件,直接從文件伺服器載入對應的靜態緩存的html文件返回給用戶,這裡面主要節省了動態語言的執行時間和資料庫訪問時間。但是會增加了緩存框架的載入和緩存查找的時間。

2 把解釋執行的開發語言編譯成為目標代碼
這個主要把解釋執行的高級語言,例如java,php直接編譯成為平台相關的目標代碼,匯編代碼。在java裡面,比較著名的就是即時編譯器(JIT),其他的語言也要類似的機制。這裡面主要節省了就是解釋執行代碼的時間。這個會增加即時編譯的時間。

3 利用反向代理伺服器的緩存
利用類似nginx的反向代理伺服器,對請求的url對應的輸出的進行緩存。這個緩存和應用程序實現的動態頁面緩存類似,只不過用反向代理充當了應用程序的緩存實現。主要節省了動態余元執行時間和資料庫訪問時間。

4 客戶端瀏覽器緩存
客戶端瀏覽器緩存主要是通過在http頭部增加
Last-Modified,If-Modified-Since,Expires,Cache-Control等標識,和伺服器進行協商,是否是採用客戶的本機緩存來實現。
其中這裡面也會分為三種方式
1 通過Last-Modified,If-Modified-Since方式和伺服器通信,客戶發出http請求中包含If-Modified-Since,如果伺服器端代碼沒有修改,伺服器端返回302響應代碼的請求響應頭(內容不返回)客戶端則直接用本機緩存的內容緩存顯示結果。相當於節省了伺服器執行代碼時間以及數據傳輸時間。
2 通過Expires,Cache-Control控制,客戶端發現如果上次請求的頁面還未過期,通過Expires或者Cache-Control進行辨別,則直接顯示本機緩存的內容,不與伺服器進行通信。

總結一下:1 一般的高並發的應用程序,都在web層採用了以上幾種緩存,一般靜態資源(圖片,js,css)都會採用nginx反向代理+客戶端緩存來實現。
2 對於門戶網站,尤其是首頁的新聞,一般都會緩存起來,可以通過反向代理也可以通過應用程序緩存實現方式
3 對於下載或者視頻網站,由於數據傳輸比較大,直接採用瀏覽器本地緩存實現。

Ⅷ 九種瀏覽器端緩存方法知多少

一、http緩存
  http緩存是基於HTTP協議的瀏覽器文件級緩存機制。即針對文件的重復請求情況下,瀏覽器可以根據協議頭判斷從伺服器端請求文件還是從本地讀取文件,chrome控制台下的Frames即展示的是瀏覽器的http文件級緩存。以下是瀏覽器緩存的整個機制流程。主要是針對重復的http請求,在有緩存的情況下判斷過程主要分3步:
判斷expires,如果未過期,直接讀取http緩存文件,不發http請求,否則進入下一步
判斷是否含有etag,有則帶上if-none-match發送請求,未修改返回304,修改返回200,否則進入下一步
判斷是否含有last-modified,有則帶上if-modified-since發送請求,無效返回200,有效返回304,否則直接向伺服器請求
  
如果通過etag和last-modified判斷,即使返回304有至少有一次http請求,只不過返回的是304的返回內容,而不是文件內容。所以合理設計實現expires參數可以減少較多的瀏覽器請求。
二、websql
   websql這種方式只有較新的chrome瀏覽器支持,並以一個獨立規范形式出現,主要有以下特點
Web Sql 資料庫API 實際上不是HTML5規范的組成部分;
在HTML5之前就已經存在了,是單獨的規范;
它是將數據以資料庫的形式存儲在客戶端,根據需求去讀取;
跟Storage的區別是: Storage和Cookie都是以鍵值對的形式存在的;
Web Sql 更方便於檢索,允許sql語句查詢;
讓瀏覽器實現小型資料庫存儲功能;
這個資料庫是集成在瀏覽器裡面的,目前主流瀏覽器基本都已支持;
  websql API主要包含三個核心方法:
openDatabase : 這個方法使用現有資料庫或創建新資料庫創建資料庫對象。
transaction : 這個方法允許我們根據情況控制事務提交或回滾。
executeSql : 這個方法用於執行真實的SQL查詢。
   openDatabase方法可以打開已經存在的資料庫,不存在則創建
var db = openDatabase('mydatabase', '2.0', my db', 2 * 1024);
  openDatabasek中五個參數分別為:資料庫名、版本號、描述、數據

Ⅸ 什麼是網站緩存就是產生html頁面嗎

轉自:http://www.fovweb.com
這是一篇知識性的文檔,主要目的是為了讓Web緩存相關概念更容易被開發者理解並應用於實際的應用環境中。為了簡要起見,某些實現方面的細節被簡化或省略了。如果你更關心細節實現則完全不必耐心看完本文,後面參考文檔和更多深入閱讀部分可能是你更需要的內容。

什麼是Web緩存,為什麼要使用它?
緩存的類型:
瀏覽器緩存;
代理伺服器緩存;
Web緩存無害嗎?為什麼要鼓勵緩存?
Web緩存如何工作:
如何控制(控制不)緩存:
HTML Meta標簽 vs. HTTP頭信息;
Pragma HTTP頭信息(為什麼不起作用);
使用Expires(過期時間)HTTP頭信息控制保鮮期;
Cache-Control(緩存控制) HTTP頭信息;
校驗參數和校驗;
創建利於緩存網站的竅門;
編寫利於緩存的腳本
常見問題解答;
緩存機制的實現:Web伺服器端配置;
緩存機制的實現:伺服器端腳本;
參考文檔和深入閱讀;
關於本文檔;

什麼是Web緩存,為什麼要使用它?Web緩存位於Web伺服器之間(1個或多個,內容源伺服器)和客戶端之間(1個或多個):緩存會根據進來的請求保存輸出內容的副本,例如html頁面, 圖片,文件(統稱為副本),然後,當下一個請求來到的時候:如果是相同的URL,緩存直接使用副本響應訪問請求,而不是向源伺服器再次發送請求。
使用緩存主要有2大理由:

減少相應延遲:因為請求從緩存伺服器(離客戶端更近)而不是源伺服器被相應,這個過程耗時更少,讓web伺服器看上去相應更快;
減少網路帶寬消耗:當副本被重用時會減低客戶端的帶寬消耗;客戶可以節省帶寬費用,控制帶寬的需求的增長並更易於管理。
緩存的類型瀏覽器緩存對於新一代的Web瀏覽器來說(例如:IE,Firefox):一般都能在設置對話框中發現關於緩存的設置,通過在你的電腦上僻處一塊硬碟空間用於存儲你已經看過的網站的副本。瀏覽器緩存根據非常簡單的規則進行工作:在同一個會話過程中(在當前瀏覽器沒有被關閉之前)會檢查一次並確定緩存的副本足夠新。這個緩存對於用戶點擊「後退」或者點擊剛訪問過的鏈接特別有用,如果你瀏覽過程中訪問到同一個圖片,這些圖片可以從瀏覽器緩存中調出而即時顯現。
代理伺服器緩存Web代理伺服器使用同樣的緩存原理,只是規模更大。代理伺服器群為成百上千用戶服務使用同樣的機制;大公司和ISP經常在他們的防火牆上架設代理緩存或者單獨的緩存設備;
由於帶路伺服器緩存並非客戶端或者源伺服器的一部分,而是位於原網路之外,請求必須路由到他們才能起作用。一個方法是手工設置你的瀏覽器:告訴瀏覽器使用那個代理,另外一個是通過中間伺服器:這個中間伺服器處理所有的web請求,並將請求轉發到後台網路,而用戶不必配置代理,甚至不必知道代理的存在;
代理伺服器緩存:是一個共享緩存,不只為一個用戶服務,經常為大量用戶使用,因此在減少相應時間和帶寬使用方面很有效:因為同一個副本會被重用多次。
網關緩存也被稱為反向代理緩存或間接代理緩存,網關緩存也是一個中間伺服器,和內網管理員部署緩存用於節省帶寬不同:網關緩存一般是網站管理員自己部署:讓他們的網站更容易擴展並獲得更好的性能;
請求有幾種方法被路由到網關緩存伺服器上:其中典型的是讓用一台或多台負載均衡伺服器從客戶端看上去是源伺服器;

Ⅹ 以下哪些是http請求中瀏覽器緩存機制會用到的協議頭

你想下載哪一種嘛?我感覺手機用UC比較好。我一直用的UC

熱點內容
足彩計演算法 發布:2024-12-26 03:31:33 瀏覽:890
做一個自動點擊刷新的腳本 發布:2024-12-26 03:29:58 瀏覽:371
子集演算法 發布:2024-12-26 03:25:41 瀏覽:897
linux用戶修改命令 發布:2024-12-26 03:13:26 瀏覽:127
編程偷懶 發布:2024-12-26 02:54:54 瀏覽:213
穿越火線什麼配置適合買主機 發布:2024-12-26 02:36:15 瀏覽:384
安卓版如何玩核彈模擬器 發布:2024-12-26 02:34:17 瀏覽:601
c語言程序網 發布:2024-12-26 02:23:25 瀏覽:351
N號房用戶試圖花錢刪除訪問記錄 發布:2024-12-26 02:06:51 瀏覽:234
現在電腦主機都什麼配置 發布:2024-12-26 02:05:12 瀏覽:789