On a en ce moment un problème de Performance de la coloration syntaxique de cgit (git.club1.fr) #217. Lorsqu’un crawler ou autre bot scanne git.club1.fr, un très grand nombre de colorations syntaxiques doivent être effectuées, cgit a un cache pour ne pas avoir à les générer deux fois, mais ce n’est pas suffisant dans notre cas.
Je me dit que, de la même manière que pour Une limite pour les envois d'emails ? #212, on pourrait configurer une rate limit pour ce genre de site un peu coûteux. L’idée serait de renvoyer une erreur 429 Too many requests
pour que les bots pas trop méchants puissent ajuster d’eux-même leur vitesse de requête.
J’ai commencé à lire cet article qui parle de configurer ça avec Nginx, mais je ne l’ai pas encore fini. Bref à creuser: https://blog.nginx.org/blog/rate-limiting-nginx
Voir aussi la doc Nginx à propos de ce module : https://nginx.org/en/docs/http/ngx_http_limit_req_module.html