Projektbeschreibung
ÜbersetztZuverlässigkeit ist hier der Schlüssel, daher mache ich mir am meisten Sorgen um Abonnentenfehler. Jeder Zustellversuch muss signiert sein, damit der Empfänger überprüfen kann, dass er von uns stammt, einen Zeitstempel und eine eindeutige Zustell-ID tragen, um gegen Duplikate zu schützen, und im Fehlerfall mit exponentiellem Backoff und Jitter bis zu einem konfigurierbaren Limit wiederholt werden, bevor er in den Dead-Letter-Zustand übergeht. Wir benötigen pro Endpunkt Begrenzungen der gleichzeitigen Verarbeitung, damit ein überlasteter Abonnent keine Ressourcen von den anderen verbraucht, und Idempotenzschlüssel, damit ein Wiederholungsversuch niemals ein Duplikat auf der Empfängerseite verursacht. Um klarzustellen, was den Umfang betrifft: Dies ist keine allgemeine Nachrichtenwarteschlange für interne Aufgaben und kein API-Gateway, das eingehenden Verkehr proxy. Es geht darum, ausgehende Webhooks zuverlässig an Dritte zu liefern, und die Warteschlange ist nur ein internes Mechanismus, nicht das Ergebnis.
Ich benötige auch Beobachtbarkeit und Verwaltung, die ich an den Support und die Partner übergeben kann. Jeder Versuch sollte in einem Zustellprotokoll mit Anfrage, Antwortcode, Latenz und Wiederholungsanzahl landen, durchsuchbar nach Ereignis, Endpunkt und Status. Es sollte eine Möglichkeit geben, fehlgeschlagene oder im Dead-Letter-Zustand befindliche Zustellungen manuell zu wiederholen, einen Endpunkt zu pausieren und ihn wieder aufzunehmen sowie Signaturgeheimnisse ohne Ausfallzeiten zu rotieren. Bitte behandeln Sie dies als Produktionsinfrastruktur — mit klarer Dokumentation und Tests, nicht als Prototyp.
— Endpunkt zum Empfangen eingehender Ereignisse mit Validierung und Persistenz
— Abonnementmodell: Übereinstimmung von Ereignistypen mit Abonnentenendpunkten
— Signierte Payloads mit Zeitstempel, Zustell-ID und Duplikatschutz
— Wiederholungen mit exponentiellem Backoff, Jitter und Dead-Letter-Zustand
— Begrenzungen der gleichzeitigen Verarbeitung pro Endpunkt und Idempotenzbehandlung
— Zustellprotokoll mit Suche, manueller Wiederholung und Endpunkt-Pause
— Geheimnisrotation, Dokumentation und Autotests