WebSocket Transport
HTTP 요청과 달리 연결이 유지되므로 handshake 단계의 인증과 연결 종료 처리를 고려합니다.
Realtime GraphQL
NestJS에서 실시간 GraphQL을 다룰 때는 transport 설정, PubSub 이벤트 이름, 인증 문맥, 수평 확장 전략을 함께 봐야 합니다.
HTTP 요청과 달리 연결이 유지되므로 handshake 단계의 인증과 연결 종료 처리를 고려합니다.
mutation이나 서비스 작업이 성공한 뒤 의미 있는 이벤트 이름과 payload를 publish합니다.
@Subscription 리졸버는 async iterator를 반환해 해당 이벤트를 기다리는 클라이언트에 데이터를 보냅니다.
서버 인스턴스가 여러 개면 메모리 PubSub 대신 공유 브로커로 이벤트를 전파해야 합니다.