Kafka Transporter
NestJS 🔴 SeniorDéfinition
Transporteur de microservices NestJS base sur kafkajs, configure via Transport.KAFKA. Il expose ClientKafkaProxy pour producteur/consommateur, gère automatiquement les topics de réponse (suffixe .reply) et, depuis NestJS v12, accepte des expressions régulières dans @MessagePattern/@EventPattern pour matcher plusieurs topics.
Analogie
Comme un central téléphonique qui route les appels (messages) vers le bon service selon le numéro compose (topic), avec la possibilité d'écoûter tout un groupe de numéros a la fois (regex).
Exemple de code
const app = await NestFactory.createMicroservice(AppModule, {
transport: Transport.KAFKA,
options: { client: { brokers: ['localhost:9092'] } },
});
@MessagePattern('orders.created')
handleOrder(@Payload() data: any, @Ctx() ctx: KafkaContext) {
const { topic, partition } = ctx.getMessage();
}
Cas d'usage
Faire communiquer des microservices via un bus Kafka haute-throughput avec garanties de partitionnement.
Anti-pattern
Utiliser @MessagePattern (request-reply) pour de gros volumes d'evenements fire-and-forget au lieu de @EventPattern.
Termes liés
Dans l'actu
- 15/09 NestJS stabilise sa v12 avec les patchs 12.0.2 et 12.0.3 (plus 11.2.4/11.2.5 pour la branche 11) : correctifs microservices Kafka (le hook de fin de traitement est toujours exécuté), destruction des sockets TCP ouvertes à l'arrêt, validation UUID améliorée, et mises à jour de multer 2.4.0 et file-type 22.1.0. Semaine 38 · 14 – 20 septembre 2026 →
Fiche mise à jour le 2026-09-27