簡體   English   中英

服務器必須為每個響應塊分配多少大小?

[英]What size does the server have to give to each response chunk?

如果我想配置我的個人服務器,以便根據塊規則設置某個請求的響應:每個服務器響應塊的大小應該是多少?

例如,假設分塊響應是一個長的 HTML 頁面或文件。

在這兩種情況下你會如何表現?

來自RFC

這允許傳輸動態生成的內容...

換句話說: Transfer-Encoding: chunked內容長度未知時需要分塊。

您的內容的長度可能大至 10Tb……但也可能小至 10 個字節。 沒關系。 夾頭的大小僅取決於您用來生成它們並隨后讀取的算法。

假設您生成不同長度的消息 stream,每秒一個字符。 在這種情況下,您可以決定向客戶端發送一個字節的卡盤。 這樣,客戶端將能夠在數據到達后立即使用它。 但是,如果您的客戶端不需要部分消息,那么您可能應該節省帶寬並在您完成生成下一條消息的那一刻發送一個塊。 同樣,消息的大小無關緊要。 它可以是 2 個字符,也可以是 1000 個字符。


再想一想, Transfer-Encoding: chunked 但是,您的問題變得廣泛而無法回答。 這取決於您的客戶端代碼、服務器代碼、網絡條件、數據屬性、所需的用戶體驗等。

如果您有任何機會從網絡角度詢問最佳大小,那么只需發送整個文件 - 這是最好的選擇。 並在您的服務器上支持Content-Range而不是Transfer-Encoding: chunked

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM