Proveedores de RPC
Elija entre proveedores de RPC administrados (Helius, Triton, QuickNode) y validadores Agave autoalojados en función del tráfico, las características y el costo operativo.
Busca en todas las páginas de la documentación
Elija entre proveedores de RPC administrados (Helius, Triton, QuickNode) y validadores Agave autoalojados en función del tráfico, las características y el costo operativo.
Tarjeta de receta de referencia rápida, lista para copiar y pegar.
import { createSolanaRpc } from "@solana/kit";
// Proveedor (clave API en la URL o encabezado por proveedor)
const rpc = createSolanaRpc(
"https://mainnet.helius-rpc.com/?api-key=YOUR_KEY"
);
await rpc.getSlot().send();# Autoalojado (operador)
agave-validator --ledger /data/ledger --rpc-port 8899Cuándo usar esto:
import { createSolanaRpc, createSolanaRpcSubscriptions } from "@solana/kit";
const HTTP = process.env.RPC_HTTP_URL!;
const WSS = process.env.RPC_WSS_URL!;
const rpc = createSolanaRpc(HTTP);
const rpcSubscriptions = createSolanaRpcSubscriptions(WSS);
const slot = await rpc.getSlot().send();
console.log("slot:", slot);
// Script de verificación de estado para CI
if (slot < 1) throw new Error("RPC no está en buen estado");Lo que esto demuestra:
getSlot valida el estado del punto final.agave-validator con su propio stake, operaciones y failover.| Opción | Fortalezas | Compromisos |
|---|---|---|
| Helius | DAS, webhooks, herramientas de desarrollo | Acoplamiento con el proveedor para APIs avanzadas |
| Triton | Yellowstone gRPC, rendimiento | Complejidad de integración de operaciones |
| QuickNode | Familiaridad con múltiples cadenas | La profundidad de las características específicas de Solana varía |
| RPC público | Gratuito, configuración cero | Límites de tasa, sin SLA |
| Autoalojamiento | Control, privacidad | Carga de personal, stake, confiabilidad |
// Failover: intentar URL secundaria en 429/503
async function rpcWithFallback<T>(fn: (rpc: ReturnType<typeof createSolanaRpc>) => Promise<T>) {
const primary = createSolanaRpc(process.env.RPC_PRIMARY!);
try {
return await fn(primary);
} catch (e) {
const secondary = createSolanaRpc(process.env.RPC_SECONDARY!);
return await fn(secondary);
}
}| Alternativa | Usar cuando | No usar cuando |
|---|---|---|
| RPC pública de devnet | Prototipos | Producción mainnet |
| Híbrido de validador colocalizado + proveedor | Firmas comerciales | Sitio simple de acuñación de NFT |
| Metadatos solo IPFS | Activos estáticos | Necesidades de RPC |
| Cliente ligero (futuro/experimental) | Descentralización extrema | Predeterminado de producción actual |
La devnet pública funciona al principio; el proveedor mejora la confiabilidad para la CI del equipo y las demostraciones.
Estime el RPS pico a partir de MAU, peso de GPA y conexiones websocket; realice pruebas de carga antes del lanzamiento.
Generalmente la misma clave API en URLs emparejadas; verifique la documentación del proveedor.
A veces, a RPS sostenidos muy altos si ya opera operaciones de staking; incluya el costo de ingeniero y hardware.
Interfaz Geyser gRPC; Triton y otros la exponen para indexadores (Yellowstone gRPC).
Use una clave de devnet restringida con un límite de tasa bajo; nunca incluya claves de mainnet en repositorios públicos.
Los proveedores ejecutan versiones de validador según su calendario de implementación; sesgo ocasional de método/versión; monitoree las páginas de estado.
Sí: failover primario/secundario o división de lecturas vs escrituras si el proveedor lo admite.
Algunos lo hacen brevemente; no confíe en la caché para lecturas posteriores a la transacción sin actualizar.
Elija la región más cercana a los usuarios y servidores; pruebe el RTT de getSlot desde la región de implementación.
Versiones de la pila: Esta página se escribió para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0 y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026