속도 제한이란?
속도 제한은 초당 요청할 수 있는 횟수를 제어합니다. 속도 제한을 초과하면 HTTP 429 응답을 받게 됩니다. 429 또는 기타 일시적 오류가 발생했을 때 취할 조치에 대한 지침은 아래의 재시도 및 오류 처리를 참조하십시오.
표준 속도 제한
귀하의 계획에는 RPC 요청과 DAS API 요청을 위한 두 가지 표준 속도 제한 그룹이 있습니다. 각 Helius 계획에 대한 기본 속도 제한은 다음과 같습니다.
| 계획 | RPC 속도 제한 | DAS 및 향상된 API |
|---|
| 무료 | 10 요청/s | 2 요청/s |
| 개발자 | 50 요청/s | 10 요청/s |
| 기업 | 200 요청/s | 50 요청/s |
| 전문가 | 500 요청/s | 100 요청/s |
| 엔터프라이즈 | 맞춤형 | 맞춤형 |
속도 제한 증가
전문가 계획에 있는 팀은 $100/월에 추가 100 RPS를 구매할 수 있습니다.
출시 전에 맞춤형 속도 제한이 필요하시면 영업팀에 연락하십시오. 개발자 또는 비즈니스 등급에 있는 경우 계획을 업그레이드하여 속도 제한을 증가시키십시오.
특별 속도 제한
일부 엔드포인트 및 전문 Helius 제품은 계산 요구 사항으로 인해 특별 속도 제한이 적용됩니다.
거래 전송
| 엔드포인트 | 무료 | 개발자 | 기업 | 전문가 |
|---|
Sender | 50/sec | 50/sec | 50/sec | 50/sec |
sendTransaction | 1/sec | 5/sec | 50/sec | 100/sec |
sendBundle | — | — | 5/sec | 5/sec |
simulateBundle | 10/sec | 50/sec | 200/sec | 500/sec |
전문가 계획에 있고 sendTransaction 속도 제한을 증가시켜야 하는 경우 영업팀에 연락하십시오.
전문가 플랜 사용자는 고성능 거래 앱 지원을 위해 Sender에 대한 속도 제한 증가 및 맞춤형 팁 배치를 요청할 수도 있습니다.
복잡한 RPC 호출
| 엔드포인트 | 무료 | 개발자 | 기업 | 전문가 |
|---|
getProgramAccounts | 5/sec | 25/sec | 50/sec | 75/sec |
기록 데이터
기록 데이터 메서드에 대한 일괄 요청을 수행할 때 다음 제한이 적용됩니다:
| 메서드 | 최대 배치 크기 |
|---|
getTransaction | 요청당 100개 항목 |
getTransactionsForAddress | 일괄 요청 불가 |
getTransfersByAddress | 일괄 요청 불가 |
| 기타 모든 기록 메서드 | 요청당 10개 항목 |
배치 제한을 초과하면 오류 응답이 발생합니다. getTransactionsForAddress 및 getTransfersByAddress의 경우 각 주소는 별도의 요청에서 쿼리해야 합니다.
LaserStream
| 리소스 | 무료 | 개발자 | 기업 | 전문가 |
|---|
| 네트워크 | — | Devnet | Devnet, Mainnet | Devnet, Mainnet |
| 최대 공개키 | — | 10M | 10M | 10M |
| 활성 연결 | — | — | 10 | 100 |
지갑 API
지갑 API는 DAS 및 향상된 API와 동일한 속도 제한을 따릅니다. 모든 엔드포인트는 이 제한을 공유합니다:
| 엔드포인트 | 무료 | 개발자 | 기업 | 전문가 |
|---|
| 모든 지갑 API 엔드포인트 | 2/sec | 10/sec | 50/sec | 100/sec |
여기에는 신원 조회, 잔액, 기록, 전송 및 자금 출처 엔드포인트가 포함됩니다. 지갑 API 문서에서 자세히 알아보십시오.
LaserStream WebSocket
| 리소스 | 무료 | 개발자 | 기업 | 전문가 |
|---|
| 동시 연결 | 5 | 150 | 250 | 1,000 |
| 연결당 구독 | 1,000 | 1,000 | 1,000 | 1,000 |
| WebSocket 유형 | 표준 | 표준, 향상된 | 표준, 향상된 | 표준, 향상된 |
Webhooks
| 리소스 | 무료 | 개발자 | 기업 | 전문가 |
|---|
| 최대 Webhooks | 5 | 50 | 50 | 50 |
| 웹훅당 주소 | 100k | 100k | 100k | 100k |
ZK 압축
| 서비스 | 무료 | 개발자 | 기업 | 전문가 |
|---|
| Photon API | 2/sec | 10/sec | 50/sec | 100/sec |
getValidityProof | 1/sec | 5/sec | 10/sec | 20/sec |
재시도 및 오류 처리
귀하의 애플리케이션이 429 Too Many Requests, 503 Service Unavailable 또는 일시적 5xx 응답을 받으면 잠시 기다렸다가 재시도하십시오. 즉시 재시도하지 마십시오. 즉시 재시도하면 요청이 쌓이고 속도 제한 회복이 더 느려집니다.
권장 전략
- 첫 번째 재시도 전 약 1초를 기다립니다.
- 매번 재시도할 때마다 기다림을 두 배로 늘리십시오, 최대 30초까지.
- 각 대기에 **±25%**의 작은 무작위 변화를 추가하여 여러 앱이 동일한 순간에 모두 재시도하지 않도록 합니다.
- 5회 시도 후 포기하고 호출한 코드에 오류를 반환합니다.
재시도할 오류
오류 응답 형태
모든 Helius API는 오류 발생 시 구조화된 JSON 본문을 반환합니다. JSON-RPC 엔드포인트(Solana RPC, DAS, Sender, Priority Fee, ZK Compression)는 표준 JSON-RPC 2.0 봉투를 반환합니다.
REST 엔드포인트(지갑 API, 관리자 API)는 다음과 같이 반환합니다.
전체 오류 코드 목록과 각 오류 코드의 의미에 대해서는 공통 오류 코드를 참조하십시오.