Backend2024년 11월 16일2분 읽기

이벤트 드리븐 아키텍처 — 메시지 큐와 이벤트 소싱

YS
YoungSam
조회 1070

이벤트 드리븐이란

서비스 간 직접 호출 대신 이벤트를 발행하고 구독하는 방식으로 소통합니다. 느슨한 결합과 확장성을 제공합니다.

Kafka Producer/Consumer

// Producer
import { Kafka } from "kafkajs";
const kafka = new Kafka({ brokers: ["localhost:9092"] });
const producer = kafka.producer();
await producer.send({
  topic: "orders",
  messages: [{ key: orderId, value: JSON.stringify(order) }],
});

// Consumer
const consumer = kafka.consumer({ groupId: "order-service" });
await consumer.subscribe({ topic: "orders" });
await consumer.run({
  eachMessage: async ({ message }) => {
    const order = JSON.parse(message.value.toString());
  },
});
Event-DrivenKafkaArchitecture

댓글 0

아직 댓글이 없습니다.