createInMemoryWebhookIdempotencyStore
expérimentaldepuis 0.1.0@legba-core/realtime
createInMemoryWebhookIdempotencyStore
Ce que ça fait
Magasin d’idempotence par défaut pour processWebhook : mémorise les identifiants d’événements déjà traités en mémoire du processus.
Signature
function createInMemoryWebhookIdempotencyStore(): WebhookIdempotencyStore
Paramètres
Aucun.
Retour
Un WebhookIdempotencyStore :
| Méthode | Rôle |
|---|---|
hasSeen(eventId) | true si cet identifiant a déjà été marqué vu |
markSeen(eventId) | Marque cet identifiant comme vu |
Erreurs
N/A.
Exemple minimal
import { createInMemoryWebhookIdempotencyStore } from "@legba-core/realtime";
const store = createInMemoryWebhookIdempotencyStore();
Exemple complet
Voir createWebhookService.
Pièges
- L’état vit en mémoire du processus : redémarrer le processus oublie tous
les identifiants déjà vus, et un déploiement à plusieurs instances ne
partage rien entre elles. Convient à un seul processus long-lived ; pour
un déploiement multi-instance, implémenter
WebhookIdempotencyStoreavec un magasin partagé (Redis, base de données, …).