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éthodeRô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 WebhookIdempotencyStore avec un magasin partagé (Redis, base de données, …).

Voir aussi