http協議是無狀態的,指的是協議對於事務處理沒有記憶能力,伺服器不知道客戶端是什麼狀態。也就是說,開啟乙個伺服器上的網頁和你之前開啟這個伺服器上的網頁之間沒有任何聯絡。http是乙個無狀態的面向連線的協議,無狀態不代表http不能保持tcp連線,更不能代表http使用的是udp協議(無連線)。
從 http/1.1起,預設使用長連線,用以保持連線特性。使用長連線的http協議,會在響應頭有加入這行**:
connection:keep-alive在使用長連線的情況下,當乙個網頁開啟完成後,客戶端和伺服器之間用於傳輸http資料的 tcp連線不會關閉,如果客戶端再次訪問這個伺服器上的網頁,會繼續使用這一條已經建立的連線。keep-alive不會永久保持連線,它有乙個保持時間,可以在不同的伺服器軟體(如apache)中設定這個時間。實現長連線要客戶端和服務端都支援長連線。
http協議的長連線和短連線,實質上是tcp協議的長連線和短連線。
客戶主機已經崩潰,並且關閉或者正在重新啟動。在任何一種情況下,客戶的tcp都沒有響應。服務端將不能收到對探測的響應,並在75秒後超時。伺服器總共傳送10個這樣的探測 ,每個間隔75秒。如果伺服器沒有收到乙個響應,它就認為客戶主機已經關閉並終止連線。
深入學習之淺拷貝
let foo let bar object.assign bar,foo foo.a foo.a 2 true bar.a 1 true 乍一看,好像已經實現了深拷貝的效果,對foo.a進行的操作並沒有體現在bar.a中,但是再往後看 foo.c.d foo.c.d 2 true bar.c.d ...
深入學習之載入機制
onload事件是因為瀏覽器的非同步機制產生的 文件本身 html dom結構生成 載入js,css,window.nl ad function jquery.fn jquery.prototype window.jquery window.jquery 3 有些時候我們需要儲存乙個值,讓這個值不受...
深入學習之淺拷貝
let foo let bar object.assign bar,foo foo.a foo.a 2 true bar.a 1 true 乍一看,好像已經實現了深拷貝的效果,對foo.a進行的操作並沒有體現在bar.a中,但是再往後看 foo.c.d foo.c.d 2 true bar.c.d ...