수이 메인넷에서 GraphQL Subscriptions가 정식 가동됐다. 개발자는 블록체인 데이터를 반복 조회하지 않고 거래·이벤트·체크포인트 변화를 실시간으로 받을 수 있게 됐다.
수이 재단은 공식 게시물에서 GraphQL Subscriptions가 메인넷과 테스트넷에서 이용 가능하다고 밝혔다. GraphQL은 필요한 데이터 항목을 지정해 조회하는 인터페이스다. 이번 기능은 기존 조회 기능에 실시간 데이터 전달을 결합한 것이 핵심이다.
개발자는 체크포인트와 거래, 이벤트를 대상으로 구독을 설정할 수 있다. 수이 재단은 거래와 이벤트 구독에 GraphQL 쿼리에서 사용하던 필터가 대체로 적용되며 일부 예외가 있다고 설명했다. 특정 패키지에서 발생한 이벤트나 특정 조건을 충족한 거래만 골라 애플리케이션으로 전달받는 방식이다.
과거 데이터와 실시간 데이터가 하나의 흐름으로 연결된다는 점도 특징이다. 구독은 현재 시점에서만 시작하지 않는다. 개발자가 과거 커서를 지정하면 해당 시점부터 현재까지 조건에 맞는 데이터를 보충한 뒤 새로운 데이터 전달을 이어간다.
연결이 끊겼을 때는 마지막으로 확인한 커서를 기준으로 누락 데이터를 다시 채울 수 있다. 수이 재단은 상위 체크포인트 연결이 중단된 경우에도 누락된 체크포인트를 복구해 구독자에게 연속된 데이터 흐름을 제공한다고 설명했다.
이 기능은 지갑과 탐색기, 거래 애플리케이션, 분석 도구, 모니터링 서비스 등에 활용할 수 있다. 거래가 발생했을 때 잔액이나 포지션을 갱신하거나 특정 계약에서 발생한 이벤트를 감지해 별도 시스템에 기록하는 작업이 대표적이다.
수이는 이미 gRPC를 통한 실시간 구독 기능을 제공해왔다. gRPC는 고성능 백엔드와 거래소, 대규모 인덱싱 시스템에 적합한 하위 수준 인터페이스다. GraphQL Subscriptions는 기존 GraphQL 쿼리에서 사용하던 유형과 필터를 활용할 수 있어 애플리케이션 개발자가 필요한 필드와 연관 데이터를 선택하기 쉽다.
수이 재단은 TypeScript와 Python 등 주요 프로그래밍 언어를 사용하는 팀이 애플리케이션에 필요한 거래와 이벤트만 구독해 자체 데이터베이스나 처리 파이프라인에 저장할 수 있다고 밝혔다. 다만 고유한 저장 구조와 처리 로직이 필요한 대규모 작업에는 맞춤형 인덱서 프레임워크가 여전히 적합하다고 설명했다.
GraphQL Subscriptions는 별도의 데이터 스택으로 작동하지 않는다. 실시간 데이터에는 수이의 gRPC 체크포인트 스트림을 활용하고, 과거 데이터 보충과 조회에는 gRPC 원장 서비스를 사용한다. 기능은 메인넷과 테스트넷에서 이용할 수 있으며, 개발자는 GraphQL Subscriptions 문서를 통해 구독 설정을 확인할 수 있다.


서도윤 기자
댓글0
첫 댓글을 남겨 보세요.