Elastic Node
Nodit의 공유 노드 인프라 서비스인 Elastic Node의 특징과 기능을 살펴보고 블록체인 개발을 시작해보세요.
Key Features
✅ HyperNode Powered Endpoint & API
Nodit Node pool이 제공하는 추상화된 거대 노드 인프라로부터 개인을 위한 Node Endpoint를 제공합니다. 이 Endpoint를 통해 각 체인별 노드 클라이언트가 지원하는 Node API를 호출하거나 스마트 컨트랙트를 배포할 수 있습니다.
✅ Low Latency, High Availability
Nodit Node Optimizer를 통해 요청 타입에 따른 부하 분산 및 처리방식을 적용하여 빠른 응답시간과 SLA 99.9%의 높은 가용성을 제공합니다.
✅ Auto Scaling (Paid Plan Only)
가변적인 자원 사용량에도 무중단 서비스가 가능하도록 Auto Scaling 기능을 제공함으로서 최적화된 비용으로 안정적인 서비스를 가능하게 합니다.
Nodit이 제공하는 공유 노드 인프라 서비스, Elastic Node
Elastic Node는 가변적인 워크로드를 처리할 수 있도록 설계된 확장형 공유 노드 솔루션입니다. Nodit의 전문 기술팀에 의해 안정적으로 운영되는 공유 노드 Endpoint를 통해 별도의 인프라 운영 인력 없이도 블록체인 Node API를 즉시 호출하여 네트워크 변경사항을 조회하고 트랜잭션을 전송할 수 있습니다. 또한 Dapp 개발을 위해 직접 컨트랙트를 배포해야 하는 경우, 할당받은 Endpoint를 개발 환경에 연동하여 작성한 스마트 컨트랙트를 원하는 네트워크에 배포할 수 있습니다.
Nodit의 전체 노드 인프라 리소스는 모든 프로젝트들에 의해 공유되지만, 프로젝트별로 실제 사용하는 리소스는 해당 프로젝트의 실시간 사용량과 사용 패턴을 기반으로 플랜에서 허용하는 최대 성능 안에서 탄력적으로 할당됩니다. 이를 통해 모든 프로젝트들은 예측된 성능 범위내에서 저렴하게 안정적인 서비스를 제공할 수 있습니다. 워크로드가 가변적이거나 예측 불가능하여 선택한 플랜의 최대 사용량을 초과할 수 있는 경우, Auto Scaling 옵션을 설정하여 서비스 중단 없이 초과한 사용량에 대한 비용만을 추가 지불할 수 있습니다. 비용 최적화를 추구하는 스타트업 또는 소규모 비즈니스를 계획중이라면, Elastic Node가 좋은 선택지가 될 것입니다.
Elastic Node Endpoint를 통해 호출가능한 Node API 목록과 명세는 API Reference메뉴의 체인별 Node API 페이지를 통해 확인할 수 있습니다. Nodit의 플랜 기본 제공 사용량은 Node API, Web3 Data API, Webhook/Stream을 포함한 전체 기능 사용에 공유되며, API별로 차감되는 사용량 및 세부사항은 Usage Measuring(CU) 페이지에서 확인해주세요.
더 강력한 확장성을 위한 HyperNode
Pool 기반의 노드 인프라 서비스의 가장 큰 챌린지는 물리적으로 여러 대로 구성된 노드 Pool을 논리적으로 단일 블록체인 노드처럼 작동하도록 구현하는 것입니다. 블록체인 노드는 각기 다른 블록 동기화 상태와 트랜잭션 풀(mempool)을 유지하기 때문에, 단순히 물리 노드를 추가하고 트래픽을 분산하는 방식으로는 일관된 동작을 보장할 수 없습니다. 예를 들어, 요청을 처리하는 노드가 변경되면서 서로 다른 최신 블록 데이터가 반환되거나, 제출한 트랜잭션에 대한 후속 정보가 정상적으로 조회되지 않는 문제가 발생할 수 있습니다.
Nodit의 HyperNode는 이러한 상태 불일치 문제를 해결하고 데이터 정합성을 보장하는 인프라 확장을 위해 설계된 추상화된 노드 레이어입니다. HyperNode는 노드 Pool 앞 단에서 모든 노드를 대상으로 한 상태 모니터링을 통해 공유 상태 풀을 구축한 뒤, 이를 기반으로 요청에 최적화된 응답을 제공함으로써 높은 데이터 정합성 및 실시간성, 빠른 응답 속도, 그리고 확장성을 제공합니다. HyperNode를 지원하는 네트워크는 기존 Elastic Node 대비 최대 10배 이상의 트래픽을 처리할 수 있으며, 최대 5배 빠르게 응답합니다. HyperNode의 주요 특성은 다음과 같습니다.
- 데이터 정합성 및 실시간성: HyperNode의 관리 Pool을 구성하는 노드들은 서로 상태 정보를 공유하며 검증된 데이터 Pool로 부터 각 프로젝트들로부터의 요청에 최적화된 응답을 제공합니다.
- 확장성: HyperNode는 Elastic Node를 구성하는 공유 자원의 유연한 확장을 지원합니다. HyperNode가 제공하는 데이터 추상화, 로드 밸런싱, 트랜잭션 관리 기능을 통해 물리 자원이 확장될 때 발생하는 복잡도를 최소화함으로서 선형적인 자원 확장을 가능케합니다.
현재 HyperNode는 베이스 메인넷, 이더리움 메인넷, 옵티미즘 메인넷, 아비트럼 메인넷, 폴리곤 메인넷을 지원하며 앞으로도 더 많은 네트워크로 지원 범위를 확장할 예정입니다.
Elastic Node Quickstart
Nodit의 Elastic Node를 연결하고 Endpoint를 활용해볼까요? Free Plan(Starter Plan)을 시작하여 즉시 사용 가능한 Elastic Node Endpoint를 확인 할 수 있습니다. Get Started with Nodit페이지의 가이드를 따라 Nodit 콘솔의 프로젝트 Overview 화면으로 이동해주세요.
현재 프로젝트에 연결된 Elastic Node 현황 확인하기
콘솔의 프로젝트 Overview 페이지의 Connected Nodes 영역에서 현재 선택한 프로젝트에 연결되어 사용 가능한 노드 목록을 확인할 수 있습니다.
Endpoint 확인하기
[HTTPS Endpoint], [WSS Endpoint], [Node API Endpoint] 버튼을 클릭하여 노드 API 호출 및 개발도구 연동을 위한 노드 Endpoint 주소를 복사할 수 있습니다. Aptos와 같이 Indexer API 형태의 데이터 조회를 제공하는 경우, [Aptos Indexer API Endpoint] 버튼을 클릭하여 쿼리를 위한 Endpoint를 확인할 수 있습니다.
지갑 연동하기
[Metamask]버튼을 클릭하여 지갑을 연동할 수 있습니다.
노드 연결 해제하기
해당 노드 연결을 삭제하려면 [Disconnect]버튼을 클릭하세요.
프로젝트에 새로운 노드 연결하기
콘솔 좌측 메뉴목록의 Nodes 메뉴로 이동하여 전체 가용 노드 현황을 확인할 수 있습니다. Connected 영역에 있는 노드들은 현재 프로젝트에 연결된 노드들을, Available 영역에 있는 노드들은 사용 가능하지만 아직 프로젝트에 연결되지 않은 노드들을 의미합니다. [Connect] 버튼을 클릭하여 프로젝트에 원하는 노드를 즉시 연결하여 사용할 수 있습니다. 프로젝트 Overview 페이지에서와 마찬가지로, Connected 영역의 노드들의 경우 [HTTPS Endpoint] 버튼 또는 [WSS Endpoint]을 클릭하여 필요한 Endpoint 정보를 확인할 수 있습니다.
Node Dashboard (상세 정보)
Node 목록 화면에서 각 체인 네트워크 우측에 위치한 [More→]영역을 클릭하여 노드 Dashboard로 이동할 수 있습니다.
Node Dashboard에서는 다음과 같은 노드 상태 정보 및 Node API 사용량 통계를 확인할 수 있습니다.
- HTTPS Endpoint / WSS Endpoint
- Node 상태 통계
- 성공한 요청 수 (24H)
- 전체 요청 수 (24H)
- 유효하지 않은 요청 수 (24H)
- Throughput Limited 적용되어 처리되지 못한 요청 수(24H)
- Node API 응답 시간 평균값 (최근 5M, ms)
- Node API 응답 시간 중간값 (최근 5M, ms)
- Node API 응답 시간 최소값 (최근 5M, ms)
- Node API 응답 시간 최대값 (최근 5M, ms)
- 기간별 전체 요청 수 그래프
- Throughput Limited 적용되어 처리되지 못한 요청 수 그래프
Node API 호출 및 Request Log 메뉴를 통한 이력 확인
원하는 노드를 프로젝트에 연결했다면, [HTTPS Endpoint] 또는 API Key를 확인하고 Node API를 호출할 수 있습니다.
API Reference 페이지를 활용한 API 호출 및 예제 코드 확인
개발 환경 설정 및 구현 작업을 하지 않고도 원하는 파라미터로 API를 호출해보고 응답을 쉽게 확인할 수 있도록 API Reference 화면에서 테스트 호출 기능을 제공하고 있습니다. 테스트하고자 하는 Node API 페이지에서 CREDENTIALS 영역에 발급받은 API Key를 입력한 뒤 API 예제를 호출해 볼 수 있습니다.
jsonrpc 템플릿을 활용한 API 호출 코드 활용하기
아래 버튼을 클릭하여 간단한 jsonrpc API 호출 예제 코드를 확인할 수 있습니다. 코드 내부에서 API 호출이 필요한 경우 예제 코드를 활용하여 쉽게 Node API를 연동해보세요.
Request Log 확인하기
Request Log 기능을 활용하여 노드에 호출한 모든 Node API 호출 이력을 확인하고 추적할 수 있습니다. Request Logs 페이지에서 기능을 살펴보고, 테스트 호출 이력을 확인해보세요.
Endpoint를 통해 스마트 컨트랙트 배포하기
Endpoint를 통해 작성한 스마트 컨트랙트를 배포하거나 지갑을 연동할 수 있습니다. Hardhat을 통한 스마트 컨트랙트 배포 예제를 통해 스마트 컨트랙트 배포를 실행해보세요.
Updated about 16 hours ago