Límits de temps per fase i termini total de la sol·licitud de proxy
Separeu els límits per fase del pressupost total de temps d'una operació a través de proxy, incloent-hi els reintents i el consum de la resposta.
Els límits de connexió i de lectura limiten esperes concretes. No necessàriament limiten tota una operació a través de proxy, que també pot incloure cua, DNS, CONNECT, TLS, redireccions, reintents i consum de la resposta.
| Límit | Abast |
|---|---|
| Límit de connexió | Establiment de la connexió segons la definició del client |
| Límit d'inactivitat de lectura | Una espera sense el progrés de dades esperat |
| Termini total | Durada permesa de l'operació completa |
Comenceu pel pressupost de l'operació
Feu servir el termini total documentat del client o el mecanisme de cancel·lació quan estigui disponible, juntament amb els límits de fase. HTTPX separa les esperes de pool, connexió, lectura i escriptura. Requests afirma que el seu límit no és un límit de descàrrega completa. curl ofereix un termini de transferència total.
Per exemple, una feina de vint segons passa dos segons en cua, tres establint la seva ruta i sis en un intercanvi fallit. El seu intent següent té aproximadament nou segons. Donar a cada reintent vint segons nous descartaria el pressupost original.
Utilitzeu un rellotge monòton per comptabilitzar el temps transcorregut. Transporteu un termini absolut o la durada restant per les capes que posseeixen la feina. Si el mecanisme de cancel·lació del voltant no pot imposar l'abast necessari, feu explícita aquesta limitació.
Incloeu el cos i la neteja
Un mètode que retorna després de les capçaleres pot deixar la lectura del cos fora del seu termini. Decidiu si el pressupost cobreix l'establiment, una descàrrega completa finita o un flux de llarga durada amb regles de vitalitat separades. Un exemple modern de .NET per cancel·lar capçaleres i cos porta un sol testimoni per les dues etapes.
Deixeu temps per tancar les respostes i completar la cancel·lació abans que un intent següent ocupi capacitat del pool. Registreu la fase fallida i el temps transcorregut; les lectures repetides que avancen poden satisfer els límits d'inactivitat mentre la feina total dura massa.
El termini del gateway cap a l'origen pertany a aquell gateway. Un cop retorna 504, el pressupost de client no utilitzat no pot allargar l'intent completat. Mantingueu cada temporitzador lligat al seu propietari quan decidiu quin paràmetre cal corregir.