Временска ограничења за повезивање и читање ограничавају појединачна чекања. Она не морају нужно ограничити целу радњу кроз прокси, која може укључивати и чекање у реду, DNS, CONNECT, TLS, преусмеравања, поновне покушаје и читање одговора.

ОграничењеОбухват
Ограничење повезивањаУспостављање везе према дефиницији клијента
Ограничење неактивности читањаЧекање без очекиваног напретка података
Укупни рокДозвољено трајање целокупне радње

Почните са буџетом радње

Користите документовани укупни рок клијента или механизам отказивања када постоји, уз ограничења по фазама. HTTPX одваја чекања на базен, повезивање, читање и писање. Requests наводи да његово ограничење није ограничење целовитог преузимања. curl пружа рок за укупан пренос.

На пример, посао од двадесет секунди троши две секунде на ред, три на успостављање руте и шест на неуспелу размену. Његов следећи покушај има отприлике девет секунди. Давање сваком поновном покушају нових двадесет секунди одбацило би изворни буџет.

Користите монотони сат за обрачун протеклог времена. Преносите апсолутни рок или преостало трајање кроз слојеве који поседују посао. Ако околни механизам отказивања не може да наметне потребан обухват, учините то ограничење изричитим.

Укључите тело и чишћење

Метода која се враћа након заглавља може оставити читање тела изван свог рока. Одлучите да ли буџет покрива успостављање, целовито коначно преузимање или дуготрајан ток са одвојеним правилима живости. Савремени .NET пример отказивања заглавља и тела носи један токен кроз обе фазе.

Оставите времена за затварање одговора и довршетак отказивања пре него што следећи покушај заузме капацитет базена. Забележите неуспелу фазу и протекло време; поновљена читања која напредују могу задовољити ограничења неактивности док укупан посао траје предуго.

Рок приступника према узводном делу припада том приступнику. Након што врати 504, неискоришћени клијентски буџет не може продужити довршени покушај. Држите сваки тајмер везан за његовог власника када одлучујете коју поставку треба исправити.

Повезани чланци