Un pool de proxy-uri poate transforma o pană simplă într-o buclă aglomerată. Alege o adresă, eșuează, alege alta, eșuează din nou. Dacă fiecare endpoint este inaccesibil pentru că propria rețea este căzută, schimbarea adreselor nu remediază niciodată cauza.

Dă operațiunii un buget înainte de a alege primul proxy din pool sau din lista de proxy-uri gratuite: un număr finit de încercări, așteptări limitate pentru conexiune și citire și un termen limită pentru întreaga sarcină. Un timeout Requests controlează comportamentul documentat de conexiune sau citire; nu limitează de unul singur o buclă care continuă să emită cereri noi.

Decide ce merită o altă încercare

  • O conexiune de proxy refuzată poate justifica încercarea altui endpoint.
  • Răspunsul destinației are nevoie de propria interpretare. Primirea unei erori HTTP dovedește că o cale de cerere s-a încheiat.
  • Un eșec de autentificare la proxy cere verificarea endpointului și a contului în loc să lovească aceleași credențiale printr-o listă tot mai mare.

Păstrează excepția sau statusul original împreună cu înregistrarea încercării. Un mesaj final care conține doar „toate proxy-urile au eșuat” ascunde dacă eșecurile au avut măcar aceeași cauză.

Verificarea sănătății fiecărui proxy înainte de fiecare cerere reală adaugă încă o cerere și tot nu poate garanta că următoarea va reuși. Refolosește informațiile recente despre sănătate acolo unde se potrivesc sarcinii, apoi lasă operațiunea reală să raporteze propriul rezultat.

O reîncercare poate repeta munca

Pentru o preluare doar în citire, trecerea la alt proxy este de obicei mai simplă decât reluarea unei trimiteri. Dacă o conexiune cade după trimiterea unei achiziții sau a unui formular, destinația s-ar putea să fi procesat-o deja. Urmează mecanismul de idempotență al serviciului și regulile HTTP de reîncercare înainte de a relua munca.

Când bugetul este epuizat, returnează un eșec util. O sarcină care se oprește cu dovezi este mai ușor de reparat decât una care continuă în tăcere să se rotească până când cineva observă.

Articole similare