Estimation du déploiement d'une limitation de débit
Comment planifier la mise en place d'une limitation de débit : seuils, périodes de test, communication avec les clients. L'écriture du code ne prend qu'une demi-journée ; le plus difficile est de définir des limites qui ne susciteront aucune plainte.
Le développement du code prend une demi-journée. Le déploiement s’étale sur deux mois.
Les limites de débit sont faciles à mettre en place, mais difficiles à déployer. Le middleware est un modèle bien connu. La difficulté réside dans le choix de seuils qui ne suscitent aucune contestation, et la seule façon de les déterminer consiste à mesurer l’utilisation actuelle, à annoncer les limites à l’avance, à observer, pendant une période d’essai, qui aurait pu être bloqué, à répondre aux protestations les plus virulentes, puis seulement à ce moment-là à appliquer les mesures. C’est toute cette séquence qui constitue le travail, et elle ne tient pas dans un sprint.
Les équipes qui évaluent le middleware passent complètement à côté du déploiement. Celles qui évaluent le déploiement obtiennent un chiffre bien plus élevé, se demandent s’il s’agit réellement d’une urgence et décident généralement de l’étaler sur plusieurs cycles, ce qui est la bonne solution. Évaluer l’ensemble du projet d’un seul coup contraint l’équipe à un faux choix binaire.
Ce qui se dit dans la salle
Backend : « Le middleware, c’est une journée de travail. Nous disposons d’une bibliothèque. »
SRE : « Quels seuils ? Avez-vous examiné la page 99 du rapport sur l’utilisation actuelle ? »
PM : « À qui devons-nous envoyer un e-mail avant que cela ne se mette en marche ? »
Assistance : « Que signifie le code de réponse 429 ? Y a-t-il une option de nouvelle tentative ? »
Titre : « Commencer par un mode d’essai, ou passer directement à l’application de la loi ? »
Questions qu’il convient de se poser avant de voter
- Avez-vous mesuré la consommation électrique aux niveaux p50, p95 et p99 par client ?
- Quels sont ces seuils, et comment ont-ils été choisis ?
- Par compte, par adresse IP, par clé API ? Des combinaisons ?
- Période d’essai : quelle est sa durée, et qu’entend-on par « pas de surprises » ?
- Communication avec les clients : à qui envoyez-vous un e-mail, et combien de temps à l’avance ?
- À quoi ressemble la réponse 429 : message, délai de réessai, lien vers la documentation ?
- Quelle est la procédure à suivre pour un client qui a besoin d’une limite plus élevée ?
Séparer ces éléments : la mise en œuvre est un aspect, la simulation et la communication en sont un autre, et le réglage des seuils en est un troisième. Chacun de ces aspects est important en soi ; l’ensemble, en revanche, ne l’est pas.
C’est le déploiement qu’il faut dimensionner, pas le middleware. Tout réside dans la mesure, la communication et les simulations.
Consultez « Estimation du déploiement d’un feature flag » pour découvrir ce même principe selon lequel « le déploiement absorbe le travail », ainsi que d’autres exemples d’estimation qui ont fait leurs preuves. Lancez une session gratuite de Planning Poker une fois que les phases ont été nommées.