Points clés
Depuis ses débuts, FourA disposait d'une seule porte d'entrée : vous nous envoyez une URL, nous vous renvoyons la page. Cette semaine, nous en ouvrons une seconde, un endpoint proxy standard que vous collez dans n'importe quel client HTTP, avec des identifiants créés dans le Dashboard. Proxy Finder sait désormais faire appel à une sortie payante sur les cibles qui refusent tout le reste, et Auto mémorise mieux les sorties qui fonctionnent.
Nouveautés
Pointez n'importe quel client HTTP vers nous
Nouvelle section dans le Dashboard : ACCESS, puis Proxy. Créez un utilisateur proxy et la page vous fournit la chaîne de connexion exacte, accompagnée d'exemples curl, Python et Node. Choisissez le type de sortie, un pays, l'option de conserver la même sortie sur une série de requêtes, et la chaîne s'adapte pendant vos choix.
Pourquoi le développer alors que l'API fonctionne déjà ? Certaines tâches ne relèvent pas du simple modèle requête-réponse. Un tunnel transmet les octets au fil de leur arrivée : pas d'enveloppe JSON, pas de mise en mémoire tampon. C'est ce dont un fichier volumineux ou un flux vidéo a besoin, et notre API n'était pas conçue pour cela.
Le ciblage va plus loin sur les sorties payantes : région, ville, réseau par nom de FAI, et durée d'attribution d'une sortie. Notre propre pool est limité au pays uniquement, par choix. Une ville dans un pays faiblement couvert ne représente qu'une poignée d'adresses, et un filtre qui échoue la plupart du temps est pire que l'absence de filtre.
Un compromis clair. À travers un tunnel brut, c'est votre client qui établit la connexion avec le site, pas nous. Le travail réalisé par notre API n'est donc pas sur ce chemin : le flag unblocker, la résolution via navigateur, les règles validate, le rejeu de session. Le tunnel vous donne accès à nos sorties et à notre bande passante. L'API vous donne accès à la couche logicielle que nous construisons par-dessus. Choisissez selon la tâche, pas au niveau global de l'entreprise.
Sorties premium, et une réponse qui indique celle qui vous a servi
/api/proxy accepte désormais un exitClass, soit standard soit premium. Premium vous route via une sortie payante, pour les cibles sur lesquelles notre propre pool se heurte à des blocages répétés.
N'envoyez rien et vous obtenez auto : le pool partagé passe en premier, et une sortie payante ne rejoint la recherche que si celle-ci est en difficulté. Spécifiez une classe et nous la respectons à la lettre. standard n'escalade jamais de lui-même, ce qui est tout l'intérêt de le définir explicitement.
La réponse renvoie exitClass, afin que vous sachiez toujours laquelle a répondu. Une requête premium à laquelle notre propre pool a répondu en premier revient avec standard, ce qui constitue un succès et non une dégradation. Si votre forfait n'inclut pas l'option premium, la requête est refusée directement plutôt que servie discrètement depuis un autre emplacement.
Le trafic premium apparaît comme une fraction de votre bande passante, jamais comme un second total : une ligne dans Quota, une colonne dans Metrics, un marqueur sur la ligne Activity correspondante, une carte sur votre Overview. Le Playground intègre ce contrôle, et son option vide a un rôle précis : la laisser non définie n'envoie aucun champ, car « n'a jamais demandé » et « a demandé de ne jamais escalader » sont deux requêtes distinctes.
Auto mémorise ce qui a fonctionné
L'échelle d'Auto a toujours enregistré les sorties en échec. Elle enregistre désormais celles qui ont abouti, à chaque échelon et plus seulement au niveau navigateur, et uniquement après que le contenu a passé la même validation qui détermine si nous vous renverrions la page. Une sortie ne peut pas être marquée comme valide pour une page que nous ne vous aurions pas retournée.
Les bannissements expirent également selon leur propre durée. La liste d'exclusion d'un hôte voyait auparavant sa durée de vie renouvelée à chaque nouveau bannissement; désormais, chaque bannissement expire selon le calendrier qui lui a été attribué.
Et lorsqu'une exécution atteint la limite de navigateurs de votre forfait, l'échelle ne s'arrête plus. Elle utilise plutôt l'échelon proxy, puis met en cache la sortie gagnante afin que les appels ultérieurs la rejouent à moindre coût sur Single.
Auto reste l'outil de découverte de chemin, et non la route de production. Laissez-le vous indiquer quel échelon a fonctionné et vous renvoyer la session, puis dirigez votre volume directement vers /api/single ou /api/browser avec cette session. C'était le principe lors du lancement d'Auto et rien de tout cela ne change.
Une page qui n'est pas celle demandée
Certaines sorties se trouvent derrière un réseau d'entreprise filtré où la passerelle répond à la place du site. La réponse renvoie un code 200, avec un corps de texte, et a passé tous nos contrôles. Ce n'est plus le cas: une telle page prouve désormais que la sortie est inutilisable plutôt que de prouver que le site a répondu, la requête passe donc à la suite et cette sortie cesse d'être privilégiée.
Chaque structure de page que nous analysons intègre une limite de taille, afin qu'un document légitime contenant ces mots par hasard ne soit pas pénalisé. La taille est une protection, jamais un signal. Nous avons abordé ce sujet plus en détail il y a deux semaines, lorsqu'un blocage ressemble à une donnée.
Sous le capot
Les rate limits sont désormais vérifiés par rapport au plafond de votre propre compte avant que quoi que ce soit ne soit décompté de la capacité partagée. Un pic de trafic sur un compte est rejeté immédiatement selon sa propre limite, sans consommer un créneau qu'un autre utilisateur attend.
Le nombre de requêtes en cours sur votre tableau de bord provient d'une jauge en direct que chaque instance republie chaque seconde, et non d'un compteur susceptible de monter sans jamais redescendre. L'écran et le limiteur lisent désormais la même valeur.
Chiffres
Lors de nos propres tests, l'ouverture d'un tunnel vers un hôte pour lequel nous avions déjà trouvé des sorties a pris de 63 à 672 ms sur une douzaine d'échantillons, la plupart sous les 260 ms. Le premier contact avec un hôte jamais traité est plus lent: plusieurs secondes, parfois plusieurs dizaines de secondes, le temps d'analyser le pool pour trouver des sorties opérationnelles sur cette cible. Cela se produit une seule fois par hôte, et non à chaque requête. Échantillon réduit, nos propres chiffres.
Disposer de deux options pose une question que vous n'aviez pas la semaine dernière: ce travail concerne-t-il le volume d'octets, ou le franchissement du blocage? Pour transférer un fichier volumineux, le tunnel est notre solution la plus économique. Tout ce qui s'avère plus complexe reste la raison d'être de l'API.