Giới hạn tốc độ là gì?
Giới hạn tốc độ kiểm soát số lượng yêu cầu bạn có thể gửi mỗi giây. Khi vượt quá giới hạn tốc độ, bạn sẽ nhận được phản hồi HTTP 429. Để biết cách xử lý khi gặp lỗi 429 hoặc lỗi tạm thời khác, hãy xem phần Thử lại và xử lý lỗi bên dưới.
Giới hạn tốc độ tiêu chuẩn
Gói của bạn có hai nhóm giới hạn tốc độ tiêu chuẩn: một nhóm dành cho các yêu cầu RPC và một nhóm dành cho các yêu cầu DAS API. Sau đây là giới hạn tốc độ cơ bản của từng gói Helius:
| Gói | Giới hạn tốc độ RPC | DAS và API nâng cao |
|---|
| Miễn phí | 10 yêu cầu/giây | 2 yêu cầu/giây |
| Nhà phát triển | 50 yêu cầu/giây | 10 yêu cầu/giây |
| Doanh nghiệp | 200 yêu cầu/giây | 50 yêu cầu/giây |
| Chuyên nghiệp | 500 yêu cầu/giây | 100 yêu cầu/giây |
| Enterprise | Tùy chỉnh | Tùy chỉnh |
Tăng giới hạn tốc độ
Các nhóm sử dụng gói Chuyên nghiệp có thể mua thêm 100 RPS với giá $100/tháng.
Nếu cần giới hạn tốc độ tùy chỉnh trước khi ra mắt, hãy liên hệ với đội ngũ bán hàng của chúng tôi. Nếu đang sử dụng gói Nhà phát triển hoặc Doanh nghiệp, vui lòng nâng cấp gói để tăng giới hạn tốc độ.
Giới hạn tốc độ đặc biệt
Một số điểm cuối và sản phẩm chuyên biệt của Helius có giới hạn tốc độ riêng do yêu cầu tính toán của chúng.
Gửi giao dịch
| Điểm cuối | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
Sender | 50/giây | 50/giây | 50/giây | 50/giây |
sendTransaction | 1/giây | 5/giây | 50/giây | 100/giây |
sendBundle | — | — | 5/giây | 5/giây |
simulateBundle | 10/giây | 50/giây | 200/giây | 500/giây |
Nếu đang sử dụng gói Chuyên nghiệp và cần tăng giới hạn tốc độ sendTransaction, hãy liên hệ với đội ngũ bán hàng của chúng tôi.
Người dùng gói Chuyên nghiệp cũng có thể yêu cầu tăng giới hạn tốc độ và thiết lập tiền tip tùy chỉnh cho Sender nhằm hỗ trợ các ứng dụng giao dịch có thông lượng cao hơn.
Lệnh gọi RPC phức tạp
| Điểm cuối | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
getProgramAccounts | 5/giây | 25/giây | 50/giây | 75/giây |
Dữ liệu lịch sử
Khi gửi yêu cầu theo lô cho các phương thức dữ liệu lịch sử, các giới hạn sau sẽ được áp dụng:
| Phương thức | Kích thước lô tối đa |
|---|
getTransaction | 100 mục cho mỗi yêu cầu |
getTransactionsForAddress | Không cho phép yêu cầu theo lô |
getTransfersByAddress | Không cho phép yêu cầu theo lô |
| Tất cả các phương thức dữ liệu lịch sử khác | 10 mục cho mỗi yêu cầu |
Việc vượt quá giới hạn lô sẽ dẫn đến phản hồi lỗi. Đối với getTransactionsForAddress và getTransfersByAddress, mỗi địa chỉ phải được truy vấn trong một yêu cầu riêng.
LaserStream
| Tài nguyên | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Mạng | — | Devnet | Devnet, Mainnet | Devnet, Mainnet |
| Số khóa công khai tối đa | — | 10M | 10M | 10M |
| Kết nối đang hoạt động | — | — | 10 | 100 |
Wallet API
Wallet API áp dụng cùng giới hạn tốc độ với DAS và API nâng cao. Tất cả các điểm cuối đều dùng chung các giới hạn này:
| Điểm cuối | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Tất cả điểm cuối Wallet API | 2/giây | 10/giây | 50/giây | 100/giây |
Các điểm cuối này bao gồm tra cứu danh tính, số dư, lịch sử, chuyển khoản và nguồn nạp tiền. Tìm hiểu thêm trong tài liệu Wallet API của chúng tôi.
Luồng đã phân tích cú pháp
| Tài nguyên | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Kết nối đồng thời | 5 | 10 | 50 | 50 |
| Đăng ký trên mỗi kết nối | 25 | 25 | 25 | 25 |
Các kết nối được tính theo từng dự án, trên tất cả khóa API của dự án đó. Dự án đạt giới hạn kết nối sẽ nhận được HTTP 429. Xem giới hạn Luồng đã phân tích cú pháp để biết giới hạn theo từng bộ lọc và tin nhắn.
LaserStream WebSocket
| Tài nguyên | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Kết nối đồng thời | 5 | 150 | 250 | 1,000 |
| Đăng ký trên mỗi kết nối | 1,000 | 1,000 | 1,000 | 1,000 |
| Loại WebSocket | Tiêu chuẩn | Tiêu chuẩn, Nâng cao | Tiêu chuẩn, Nâng cao | Tiêu chuẩn, Nâng cao |
Webhook
| Tài nguyên | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Số webhook tối đa | 5 | 50 | 50 | 50 |
| Số địa chỉ trên mỗi webhook | 100k | 100k | 100k | 100k |
Nén ZK
| Dịch vụ | Miễn phí | Nhà phát triển | Doanh nghiệp | Chuyên nghiệp |
|---|
| Photon API | 2/giây | 10/giây | 50/giây | 100/giây |
getValidityProof | 1/giây | 5/giây | 10/giây | 20/giây |
Thử lại và xử lý lỗi
Khi ứng dụng nhận được phản hồi 429 Too Many Requests, 503 Service Unavailable hoặc phản hồi 5xx tạm thời, hãy chờ một lúc rồi thử lại — đừng thử lại ngay lập tức. Việc thử lại ngay sẽ khiến các yêu cầu dồn lại và làm quá trình phục hồi sau khi vượt giới hạn tốc độ chậm hơn, chứ không nhanh hơn.
Chiến lược đề xuất
- Chờ khoảng 1 giây trước lần thử lại đầu tiên.
- Tăng gấp đôi thời gian chờ sau mỗi lần thử lại, tối đa 30 giây.
- Thêm một khoảng biến thiên ngẫu nhiên nhỏ ±25% vào mỗi lần chờ để nhiều ứng dụng không thử lại cùng một thời điểm.
- Dừng sau 5 lần thử và trả lỗi về mã đã gọi bạn.
Những lỗi nên thử lại
Ví dụ
Cấu trúc phản hồi lỗi
Tất cả Helius API đều trả về nội dung JSON có cấu trúc khi xảy ra lỗi. Các điểm cuối JSON-RPC (Solana RPC, DAS, Sender, Priority Fee, ZK Compression) trả về cấu trúc bao JSON-RPC 2.0 tiêu chuẩn:
Các điểm cuối REST (Wallet API, Admin API) trả về:
Xem Các mã lỗi thường gặp để biết danh sách đầy đủ các mã lỗi và ý nghĩa của từng mã.