Nouveau limiteur de débit pour plus de performances
Chez Transloadit, nous nous efforçons de ne limiter en rien l’utilisation de nos clients. C’est pourquoi nous n’avions jusqu’ici qu’un seul limiteur de débit, qui plafonne le nombre de requêtes visant à créer une Assembly à 250 par minute. Ce dispositif a plutôt bien fonctionné au fil des années, puisqu’il ne limite réellement que les usages abusifs du système. 250 nouvelles Assemblies par minute, c’est déjà beaucoup.
Cependant, des usages plus récents ont montré que cette seule limite ne peut pas garantir un système performant pour tous nos clients à tout moment. Même si les utilisateurs restent habituellement bien en dessous de la limite de 250 nouvelles Assemblies par minute, chacune de ces Assemblies peut être énorme. De plus, une fois lancées, ces Assemblies restent sur nos serveurs pendant de nombreuses minutes, voire, dans de rares cas, pendant des heures. Cela entraîne une forte charge sur nos serveurs, des Assemblies et des Jobs d’encodage en attente, ainsi que de longs délais pour les autres utilisateurs dont l’usage est habituel. Nous devions agir.
Aujourd’hui, nous présentons donc un nouveau limiteur de débit qui plafonne l’utilisation à 250 Assemblies exécutées simultanément. En toute franchise, ce limiteur de débit est en réalité déjà en production depuis 6 semaines. Pendant cette période, nous avons observé de près qui serait concerné et dans quelles situations précises. Cette analyse approfondie nous a permis de conclure que 250 est une bonne valeur par défaut pour tous les clients. Les comptes des clients qui s’approchaient régulièrement de cette limite bénéficient déjà d’une limite plus élevée. Cela devrait garantir que personne ne subira de conséquences négatives sur son utilisation de Transloadit du fait de ce changement. Chacun devrait désormais pouvoir profiter d’un système plus performant, en sachant que les autres clients ne peuvent plus épuiser les ressources en imposant une charge disproportionnée à nos serveurs.
Entre-temps, nous avons également ajouté la prise en charge du limiteur de débit à nos SDK Node et SDK Ruby, qui effectuent automatiquement de nouvelles tentatives pour les requêtes soumises à cette limitation. Les autres SDK suivront bientôt. Si vos tâches de traitement par lots côté serveur atteignent régulièrement la limite de débit, nous vous conseillons d’utiliser l’un de ces SDK. En revanche, si vous atteignez cette limite parce que vos utilisateurs téléversent beaucoup de fichiers, il s’agit bien entendu d’un usage habituel, et nous augmenterons alors volontiers la limite de votre compte.
