Faaside ajapiirangud ja proxy-päringu üldine tähtaeg
Eraldage faasipõhised piirangud proxy-kaudu tehtava toimingu kogu ajaeelarvest, sealhulgas korduskatsed ja vastuse lugemine.
Ühenduse ja lugemise ajapiirangud piiravad kindlaid ootamisi. Need ei piira tingimata kogu proxy-kaudu tehtavat toimingut, mis võib hõlmata ka järjekorras ootamist, DNST, CONNECTi, TLSi, ümbersuunamisi, korduskatseid ja vastuse lugemist.
| Piirang | Ulatus |
|---|---|
| Ühenduse ajapiirang | Ühenduse loomine kliendi määratluse järgi |
| Lugemise tegevusetuse ajapiirang | Ootamine ilma oodatud andmete edenemiseta |
| Üldine tähtaeg | Terve toimingu lubatud kestus |
Alustage toimingu eelarvest
Kasutage kliendi dokumenteeritud üldist tähtaega või tühistamismehhanismi, kui see on olemas, koos faasipiirangutega. HTTPX eristab basseini, ühenduse, lugemise ja kirjutamise ootamist. Requests märgib, et selle ajapiirang ei ole tervikliku allalaadimise piirang. curl pakub üldise ülekande tähtaja.
Näiteks kahekümne sekundi pikkune töö kulutab kaks sekundit järjekorras, kolm oma marsruudi loomisele ja kuus ebaõnnestunud vahetusele. Selle järgmisel katsel on umbes üheksa sekundit. Iga korduskatse jaoks värske kahekümne sekundi andmine viskaks algse eelarve ära.
Kasutage möödunud aja arvestamiseks monotoonilist kella. Kandke absoluutset tähtaega või järelejäänud kestust läbi tööd omavate kihtide. Kui ümbritsev tühistamismehhanism ei suuda nõutavat ulatust jõustada, tehke see piirang selgesõnaliseks.
Kaasake keha ja puhastus
Päiseid tagastav meetod võib jätta keha lugemise oma tähtajast välja. Otsustage, kas eelarve katab loomise, terve lõpliku allalaadimise või pikaajalise voo eraldi elujõulisuse reeglitega. Kaasaegne .NET-i näide päiste ja keha tühistamiseks kannab ühte tokenit läbi mõlema etapi.
Jätke aega vastuste sulgemiseks ja tühistamise lõpetamiseks enne, kui järgmine katse võtab basseini mahtu. Registreerige ebaõnnestunud faas ja möödunud aeg; edenevad korduvad lugemised võivad rahuldada tegevusetuse piiranguid, samal ajal kui kogu töö kestab liiga kaua.
Lüüsi ülesvoolu tähtaeg kuulub sellele lüüsile. Kui see tagastab 504, ei saa kasutamata kliendi eelarve lõpetatud katset pikendada. Hoidke iga taimer oma omaniku küljes, kui otsustate, millist seadet tuleb parandada.