Realtime GraphQL

GraphQL subscription 인증 확장

PubSub 예제는 단일 프로세스에서는 충분하지만 운영에서는 WebSocket 인증, 필터링, Redis pub/sub, 재연결 정책을 함께 설계해야 합니다.

Connect

연결 수립

graphql-ws 또는 subscriptions-transport-ws에서 connectionParams로 token을 전달합니다.

Auth

구독 인증

context 생성 시 JWT를 검증하고 subscription resolver에서 사용자별 topic 범위를 제한합니다.

Filter

이벤트 선별

withFilter나 topic 분리로 본인이 볼 수 있는 postAdded 이벤트만 전달합니다.

Scale

수평 확장

여러 Nest 인스턴스에서는 in-memory PubSub 대신 Redis, NATS, Kafka 브로커를 씁니다.