Contexte et déclencheur

Après la publication d'un lien vers sprinklz.io sur Hacker News, le post a reçu environ cent votes positifs. L’auteur a alors observé une dégradation progressive des performances du site, même plusieurs jours après le pic initial de visibilité. Les métriques montraient un nombre anormalement élevé de requêtes, alors que le nombre d’utilisateurs authentifiés restait stable.

Analyse du trafic

Le journal NGINX a révélé que près de 50 % du trafic provenait d’une même adresse IP. Cette adresse s’identifiait comme un service qui « écoute les changements d’un site et résume le contenu pour une newsletter IA ». Le même journal a enregistré d’autres agents utilisateurs : Claude‑bot, OpenAI‑bot, le robot d’indexation de Google, ainsi que plusieurs scanners de vulnérabilités qui tentaient d’accéder à /wp-content/phpinfo.php malgré l’absence de WordPress sur le serveur.

Contremesures techniques

Face à ces constats, l’auteur a ajouté un fichier robots.txt afin d’interdire l’accès aux chemins sensibles tout en autorisant les bots légitimes (Google‑bot). Il a également mis en place des limites de débit au niveau d’NGINX :

limit_req_zone $binary_remote_addr zone=botlimit:10m rate=5r/s;
server {
    location / {
        limit_req zone=botlimit burst=10 nodelay;
        ...
    }
}

Ces directives limitent chaque adresse IP à cinq requêtes par seconde, avec un burst de dix requêtes autorisées sans retard. En complément, le développeur a renforcé la journalisation des points d’entrée API afin de détecter rapidement les schémas de requêtes anormaux.

Optimisations d’infrastructure

Pour garantir la capacité de supporter xxx QPS de trafic légitime, plusieurs améliorations ont été appliquées : migration vers un serveur d’application plus performant, mise en cache des réponses statiques via Cache‑Control, et activation du mode HTTP/2 pour réduire la latence des connexions multiplexées. Le site, construit comme une application monopage (SPA), bénéficie désormais d’un pré‑chargement des ressources critiques afin de diminuer le nombre de requêtes nécessaires au rendu initial.

Ces actions combinées ont permis de ramener le temps de réponse moyen de plusieurs secondes à moins de 200 ms sous charge normale, tout en limitant l’impact des bots automatisés. L’auteur conclut que la visibilité soudaine sur des agrégateurs comme Hacker News peut attirer non seulement des visiteurs humains, mais aussi des services d’IA qui scrutent le web à grande échelle, rendant indispensable la mise en place de filtres de trafic et de limites de débit dès le départ.