Så funkar vår smarta routing — success rate, latens och per-kund-exkludering
När du skickar ett CONNECT-anrop mot proxy.proxyapi.se väljer vår selektor en av proxies i poolen åt dig. Den valet är inte random — det är en viktad dragning som ska ge dig snabbaste möjliga väg till ditt mål just nu. Här är vad som händer under huven.
Viktningen
Varje proxy i poolen har två löpande nyckeltal: success_rate_24h (andel lyckade requests senaste dygnet) och avg_response_ms_24h (medelsvarstid). Varje gång vi väljer räknar vi en vikt per proxy enligt:
vikt = success_rate × (1 / response_ms) × (1 − load_pct) Sedan gör vi en viktad slumpmässig dragning över alla proxies som matchar dina kriterier (typ, land, dina modifierare). Praktiskt betyder det: en proxy som svarar på 100 ms med 99% success rate blir vald ~10× oftare än en som svarar på 500 ms med 70%. Men den långsammare proxyn blir fortfarande vald ibland — så en tillfälligt dålig proxy inte fastnar i ett svart hål av noll trafik.
Health validators matar in
Siffrorna ovan kommer inte enbart från verklig kundtrafik. Du kan konfigurera health validators i dashboarden — en HTTP-check mot valfri URL, t.ex. din egen API-endpoint. Health-workern kör den checken genom varje proxy var 5:e minut (konfigurerbart) och skriver resultatet i samma success-rate-räknare.
Det ger två saker: (1) proxies som blockas av just din destination blir snabbt identifierade och nedviktade automatiskt, och (2) du får en per-proxy-tabell i dashboarden där du ser success rate och exit-IP. Ingen annan leverantör visar det här i realtid.
När auto-scoringen inte räcker — per-kund-exkludering
Ibland fungerar en proxy fint för andra kunder men misslyckas systematiskt mot just ditt mål (t.ex. din destination har svartlistat det IP:t). Auto-scoringen tar tid att justera sig eftersom proxyn fortfarande funkar för alla andra.
Lösningen: klicka Stäng av på den proxyn i validator-dashboarden. Selektorn hoppar då över den proxyn för din kund — andra kunder påverkas inte. Du kan lägga till en fri kommentar när du stänger av (t.ex. "403 från target") och se alla dina avstängda proxies på /exclusions. Återaktivera med ett klick när som helst.
Mjuk fallback
Om du sätter en proxy-typ som preferens (t.ex. "residential" i Settings) och det tillfälligt inte finns några tillgängliga residential-proxies just nu, faller vi tillbaka till vilken typ som helst snarare än att returnera 502. Per-request-modifierare (-type-residential) är däremot strikt — om du säger residential och poolen är tom blir det 502 tills poolen fyller på igen.
Sticky sessions
Om din integration kräver samma exit-IP flera anrop i rad (checkout, inloggning, CSRF-skydd) lägger du till -session-<id> i användarnamnet. Vi pinnar då session-id:t till en specifik proxy i 10 minuter via Redis. Samma session-id = samma proxy. Olika session-id = oberoende pinning.
Sammanfattning
Du behöver inte konfigurera någonting för att få snabb, stabil routing — selektorn sköter det. Men när du vill styra (typ, session, opt-out mot en specifik proxy) så finns rattarna där, både per request och per konto. Och om du kör health validators mot ditt riktiga mål får du den snabbaste och mest relevanta routingen systemet kan erbjuda.