2 回答

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊
想象一下, 一個(gè)http request從server那里獲取到的response的body有10G, 客戶端的內(nèi)存只有4G, 客戶端是如何操作的, 就這么一個(gè)很普通的下載大文件的操作, 想一下這個(gè)響應(yīng)體是如何被存盤的, 你的問(wèn)題迎刃而解..

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個(gè)贊
樓上說(shuō)的是對(duì)的。補(bǔ)充一下,底層在接收數(shù)據(jù)的時(shí)候是傳輸協(xié)議在處理,服務(wù)端發(fā)送數(shù)據(jù)時(shí),會(huì)將數(shù)據(jù)做分包和分幀處理,是為了提高傳輸效率。
在客戶端接收數(shù)據(jù)時(shí),協(xié)議也會(huì)將接收的數(shù)據(jù)幀重新組合成完整的數(shù)據(jù),中間還包括數(shù)據(jù)校驗(yàn)等操作。
當(dāng)數(shù)據(jù)接收完畢后才能使用。
一般使用TCP協(xié)議傳輸,發(fā)生丟包或者其他情況導(dǎo)致數(shù)據(jù)缺失,會(huì)讓服務(wù)端補(bǔ)發(fā)數(shù)據(jù)(這點(diǎn)不確定)。
可能是服務(wù)端一開始發(fā)送就發(fā)多個(gè),或者是客戶端請(qǐng)求補(bǔ)發(fā)。
添加回答
舉報(bào)