Časovne omejitve po fazah in skupni rok proxy zahteve
Ločite omejitve po fazah od skupnega časovnega proračuna operacije prek proxy, vključno s ponovnimi poskusi in branjem odgovora.
Časovne omejitve povezave in branja omejujejo določena čakanja. Ne omejujejo nujno celotne operacije prek proxy, ki lahko vključuje tudi čakanje v vrsti, DNS, CONNECT, TLS, preusmeritve, ponovne poskuse in branje odgovora.
| Omejitev | Obseg |
|---|---|
| Omejitev povezave | Vzpostavitev povezave po definiciji odjemalca |
| Omejitev nedejavnosti branja | Čakanje brez pričakovanega napredka podatkov |
| Skupni rok | Dovoljeno trajanje celotne operacije |
Začnite s proračunom operacije
Uporabite dokumentirani skupni rok odjemalca ali mehanizem preklica, kadar obstaja, skupaj s faznimi omejitvami. HTTPX ločuje čakanja na bazen, povezavo, branje in pisanje. Requests navaja, da njegova omejitev ni omejitev celotnega prenosa. curl ponuja rok za skupni prenos.
Na primer, dvajsetsekundno opravilo porabi dve sekundi v vrsti, tri za vzpostavitev poti in šest za neuspešno izmenjavo. Njegov naslednji poskus ima približno devet sekund. Če bi vsakemu ponovnemu poskusu dali novih dvajset sekund, bi zavrgli prvotni proračun.
Za obračun pretečenega časa uporabite monotono uro. Prenesite absolutni rok ali preostalo trajanje skozi plasti, ki imajo delo. Če okoliški mehanizem preklica ne more uveljaviti zahtevanega obsega, to omejitev izrecno navedite.
Vključite telo in čiščenje
Metoda, ki se vrne po glavah, lahko pusti branje telesa zunaj svojega roka. Odločite se, ali proračun pokriva vzpostavitev, celoten končni prenos ali dolgotrajen tok s posebnimi pravili živosti. Sodoben primer .NET za preklic glav in telesa nosi en žeton skozi obe stopnji.
Pustite čas za zaprtje odgovorov in dokončanje preklica, preden naslednji poskus zavzame zmogljivost bazena. Zabeležite neuspešno fazo in pretečeni čas; ponovljena branja z napredkom lahko izpolnijo omejitve nedejavnosti, medtem ko celotno opravilo traja predolgo.
Rok prehoda proti nadrejenemu delu pripada temu prehodu. Ko vrne 504, neporabljeni odjemalčev proračun ne more podaljšati dokončanega poskusa. Vsak časovnik držite vezan na njegovega lastnika, ko se odločate, katero nastavitev je treba popraviti.