Paramètres disponibles pour les limites de débit globales et le *throttling*

Discourse est livré avec 3 limites de débit globales différentes qui peuvent être configurées par les administrateurs du site.

Limites de débit globales par adresse IP

Ces limites s’appliquent à chaque adresse IP unique qui atteint l’application Discourse. (les fichiers servis directement depuis le système de fichiers ou le CDN sont exclus)

Par défaut, cette limite de débit est activée, vous pouvez la désactiver ou la définir en mode de signalement.

DISCOURSE_MAX_REQS_PER_IP_MODE : valeur par défaut block, cette limite de débit s’applique dès l’installation. (les autres options sont warn, warn+block, et none)

DISCOURSE_MAX_REQS_PER_IP_PER_MINUTE : nombre de requêtes par adresse IP par minute (la valeur par défaut est 200)

DISCOURSE_MAX_REQS_PER_IP_PER_10_SECONDS : nombre de requêtes par adresse IP par 10 secondes (la valeur par défaut est 50)

DISCOURSE_MAX_ASSET_REQS_PER_IP_PER_10_SECONDS : nombre de requêtes d’actifs (avatars/css) par adresse IP par 10 secondes (la valeur par défaut est 200)

DISCOURSE_MAX_REQS_RATE_LIMIT_ON_PRIVATE : la limite de débit doit-elle s’appliquer aux adresses IP privées accédant à Discourse ? La valeur par défaut est fausse.

DISCOURSE_SKIP_PER_IP_RATE_LIMIT_TRUST_LEVEL : utiliser les limites de débit par utilisateur plutôt que les limites de débit par adresse IP pour les utilisateurs ayant ce niveau de confiance ou plus (la valeur par défaut est 1)

DISCOURSE_MAX_REQS_PER_IP_EXCEPTIONS : une liste séparée par des espaces d’adresses IP ou de blocs CIDR à exempter de la limitation de débit par adresse IP. Par exemple : 14.15.16.32/27 216.148.1.2

Limites de débit de l’API utilisateur

Les applications mobiles acquièrent une clé d’API utilisateur par appareil pour accéder à Discourse au nom d’un utilisateur (en utilisant un protocole ouvert). Ces clés d’API sont très strictement limitées.

DISCOURSE_MAX_USER_API_REQS_PER_MINUTE : valeur par défaut 20
DISCOURSE_MAX_USER_API_REQS_PER_DAY : valeur par défaut 2880

Limites de débit de l’API Administrateur

Les clés d’API administratives peuvent être générées via la page votsite.com/admin/api/keys. Ces clés peuvent opérer au nom des utilisateurs, mais nécessitent des privilèges administratifs pour être générées. Il y a une limite de 60 requêtes par minute, partagée entre toutes les clés.

Les utilisateurs auto-hébergés peuvent modifier cela dans leur fichier app.yml. Les clients hébergés devront contacter leur fournisseur d’hébergement.

DISCOURSE_MAX_ADMIN_API_REQS_PER_MINUTE : 60

Limites de débit de l’API du plugin Data Explorer

DISCOURSE_MAX_DATA_EXPLORER_API_REQ_MODE : valeur par défaut warn, cette limite de débit s’applique dès l’installation. (les autres options sont block, warn+block, et none)

DISCOURSE_MAX_DATA_EXPLORER_API_REQS_PER_10_SECONDS : 2

Note : Les requêtes effectuées via l’interface utilisateur de Data Explorer ne sont pas comptabilisées dans la limite de débit.

Que dois-je faire si j’atteins une limite de débit et que je suis ralenti ?

Si vous consommez l’API par programme et recevez en retour une réponse de limitation de statut 429, vous devez la respecter et ralentir.

En tant qu’utilisateur final, vous ne devriez normalement pas subir de limites de débit ; si c’est le cas, ralentissez. Vous pourriez la déclencher en ouvrant 50 onglets rapidement ou en faisant quelque chose de similaire.

Avertissement sur le pare-feu et le proxy ! :warning:

Si vous utilisez un proxy inverse mal configuré, Discourse pourrait penser que toutes les requêtes proviennent d’une seule adresse IP, il est donc très probable que vous atteigniez les limites de débit rapidement. Assurez-vous de configurer votre proxy inverse pour transférer correctement l’adresse IP.

Comment puis-je modifier ces limites ?

Pour modifier les limites, ajoutez le changement souhaité dans votre fichier app.yml dans la section env.

:discourse: Si vous êtes hébergé par Discourse, et sur un plan Enterprise, contactez team@discourse.org si vous avez besoin d’ajuster l’une de ces limites.

Les limites de débit globales ne sont pas ajustables sur les plans starter, pro ou business.

60 « J'aime »
Troubleshooting a 429 (rate limit)
Is there a limit of API requests?
Rate limits for API users
Any way to turn off RateLimiter temporarily for bulk creation by admin?
Changing/removing API rate limit with category creation
Internal links not oneboxing in private messages
How to improve the forum api call number limit?
Discourse-topic-organizer causing "Slow down, too Many Requests from this IP Address"
How-to disable or tune rate limiting by ip address?
How to edit "hidden" site_settings?
Rate limit errors although IP is whitelisted
API rate limits
User API keys specification
Why semrushbot and ahrefsbot are blocked by default?
429 error when opening multiple topics
Remove the ip limits
Error code 429 when utilising a Zapier integration
Understanding /logs/report_js_error 429
Direct URL for the "email me a login link" feature
Do not see discourse/config/site_settings.yml to set USER API limits
Uncaught (in promise) error
Webhook connect to post comments to WordPress working unreliably
Changing/removing API rate limit with category creation
Enable user to Generate API key
Import posts through API (time delay)
You Have Performed this Action Too Many Times Error
Api call returns nothing when too many requests
Very slow discobot certificate generation on our server
API rate limits
Create and configure an API key
Fetch All Posts from a Topic Using the API
Discourse REST API Documentation
Discourse API Generating 429
How to disable api limits?
Global rate API Limit is not working on live server
How to avoid throttling limits with admin API key?
Set Environmental Variables
Increase rate limit for API?
How do I disable rate limiting from a single IP
Generate User Api Key Without User Approval
Default value for id_10_secs_limit
Semantic Search API
Self-hosting Index
Issues when I enable Component, maybe Right Sidebar Blocks?
Direct URL for the "email me a login link" feature