Die Programmierung dauert einen halben Tag. Die Einführung dauert zwei Monate.

Ratenbegrenzungen lassen sich leicht implementieren, aber nur schwer einführen. Die Middleware ist ein bekanntes Muster. Die Schwierigkeit besteht darin, Schwellenwerte festzulegen, über die sich niemand beschwert, und die einzige Möglichkeit, diese zu ermitteln, besteht darin, die aktuelle Nutzung zu messen, die Begrenzungen im Voraus anzukündigen, während einer Testphase zu beobachten, wer tatsächlich blockiert worden wäre, die Schwellenwerte für die lautstarken Nutzer anzuheben und erst dann die Begrenzungen durchzusetzen. Diese Abfolge macht den Aufwand aus und lässt sich nicht in einen Sprint einplanen.

Teams, die die Middleware einschätzen, verpassen die Einführung gänzlich. Teams, die die Einführung einschätzen, kommen auf eine viel höhere Zahl, hinterfragen, ob es tatsächlich dringend ist, und beschließen in der Regel, die Einführung über mehrere Zyklen hinweg schrittweise durchzuführen – was die richtige Vorgehensweise ist. Die Einschätzung des gesamten Umfangs auf einmal zwingt das Team in eine falsche Entweder-oder-Situation.

Was in dem Raum gesagt wird

Backend: „Die Middleware ist eine Sache von einem Tag. Wir verfügen über eine Bibliothek.“

SRE: „Welche Schwellenwerte? Haben wir uns Seite 99 der aktuellen Nutzungsdaten angesehen?“

PM: „An wen müssen wir eine E-Mail senden, bevor das hier in Betrieb geht?“

Support: „Was besagt die Antwort 429? Gibt es eine Möglichkeit, den Vorgang später erneut zu versuchen?“

Leitartikel: „Zuerst ein Testbetrieb oder direkt zur Durchsetzung?“

Fragen, die man sich vor der Stimmabgabe stellen sollte

  • Haben wir den Stromverbrauch – p50, p95, p99 pro Kunde – erfasst?
  • Welche Schwellenwerte – und wie wurden diese festgelegt?
  • Pro Konto, pro IP-Adresse, pro API-Schlüssel? Kombinationen?
  • Testphase: Wie lange dauert sie, und was gilt als „keine Überraschungen“?
  • Kundenkommunikation: An wen senden wir E-Mails, und wie weit im Voraus?
  • Wie sieht die 429-Antwort aus – Meldung, Zeit bis zum erneuten Versuch, Link zur Dokumentation?
  • Wie sieht der Umgehungsweg für einen Kunden aus, der ein höheres Limit benötigt?

Aufteilen: Die Durchsetzung ist eine Sache, Testläufe und Kommunikation eine andere, die Feinabstimmung der Schwellenwerte eine dritte. Jede dieser Komponenten ist für sich genommen umfangreich; das Gesamtpaket ist es jedoch nicht.

Passen Sie den Umfang der Einführung an, nicht die Middleware. Das Wichtigste sind die Messung, die Ankündigung und der Testlauf.

Siehe Schätzung einer Feature-Flag-Einführung für dasselbe Muster, bei dem die Einführung den Arbeitsaufwand verschlingt, sowie die anderen Beispiele für gelungene Schätzungen. Starten Sie eine kostenlose Planning-Poker-Sitzung, sobald die Phasen benannt sind.