NATS Transporter

NestJS 🔴 Senior

Définition

Transporteur de microservices NestJS pour NATS, migre depuis NestJS v12 vers le driver @nats-io/transport-node (NATS v3). Il supporte les queue groups pour repartir la charge entre instances et les wildcards de sujets (par exemple time.us.*) pour matcher des patterns dynamiques.

Analogie

Comme une bande FM : plusieurs récepteurs (queue group) peuvent écoûter la même fréquence (sujet) et se partager les messages sans double réception.

Exemple de code

const app = await NestFactory.createMicroservice(AppModule, {
  transport: Transport.NATS,
  options: { servers: ['nats://localhost:4222'], queue: 'orders_queue' },
});

@MessagePattern('time.us.*')
handleTime(@Payload() data: any) { /* wildcard */ }

Cas d'usage

Repartir la charge entre plusieurs instances d'un même microservice via un queue group NATS.

Anti-pattern

Oublier gracefulShutdown/gracePeriod, coupant des messages en cours lors d'un redéploiement.
#architecture#interview

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre