Streaming permezz ta' forward proxy kontra l-ibbuffjar tar-risposta sħiħa
Issepara l-istreaming, l-ibbuffjar bil-qari bil-quddiem u l-ipproċessar tar-risposta sħiħa meta niżla tidher li qed tistenna fil-proxy.
Meta niżla tidher li qed tistenna, issepara tliet avvenimenti: il-wasla tal-intestaturi tar-risposta, il-wasla tal-bytes tal-ġisem u l-kapaċità tal-applikazzjoni li tuża jew turi r-riżultat. Indikatur tat-tagħbija waħdu ma jistax jidentifika liema minnhom qed jittardja.
L-istadji normali tal-istreaming jistgħu jikkoinċidu:
origin produces a chunk → proxy forwards bytes → client consumes themProxy jista' jikteb kontenut xieraq fil-cache waqt li jgħaddih. Il-cache ma teħtieġx li tistenna l-fajl kollu. read_ahead_gap ta' Squid jikkontrolla l-ġbir li jmur qabel il-kunsinna, li huwa tip ieħor ta' bbuffjar.
Il-kontropressjoni tista' temporanjament twaqqaf il-qari 'l fuq meta klijent bil-mod jimla l-kwijiet tal-ħruġ. Content-Length ukoll jipprovdi t-tul mingħajr ma jkun hemm bżonn bbuffjar sħiħ. Il-kodifikazzjoni HTTP/1.1 chunked tippermetti kunsinna gradwali, iżda ma tistax twiegħed latency baxxa jekk komponent preċedenti jżomm id-dejta.
Sussegwentement eżamina l-istadji tal-ipproċessar. Kitba mill-ġdid jew spezzjoni jistgħu jeħtieġu parti mill-ġisem jew kollu. Il-kompressioni u l-istrutturar tal-applikazzjoni jistgħu jittardjaw il-ħruġ utli. Fil-klijent, metodu li jistenna l-firxa sħiħa tal-bytes jerġa' lura aktar tard, u l-browser jista' jirċievi bytes qabel ma jkun jista' jurihom.
Wara CONNECT b'suċċess, proxy ordinarju jgħaddi l-fluss tas-servizz mingħajr ma jkun jeħtieġ it-tul finali tal-fajl imtella'. Issegwi l-ewwel avveniment nieqes hawn fuq qabel ma tibdel is-settings tal-buffer jew tat-timeout. Meta curl huwa l-osservatur, l-għażla no-buffer tiegħu tibdel l-istadju tal-ħruġ lokali.