Logo
Nuevos usuarios de RPC: 35% de descuento el primer mesVer oferta
RPC Assistant

API de Solana gratuita: qué obtienes realmente y cuándo cambiar

Resumen

Una API de Solana gratuita te proporciona un endpoint HTTP y WebSocket que habla los métodos JSON-RPC de Solana, para que puedas leer cuentas, enviar transacciones y suscribirte a registros sin ejecutar un validador. La trampa es que los niveles gratuitos son compartidos, tienen límite de velocidad y a menudo no son adecuados para tráfico de producción o consultas pesadas de archivo.

Este artículo explica qué puede manejar realísticamente una API de Solana gratuita, cómo probarla con llamadas JSON-RPC reales y las señales que indican que es hora de pasar a un plan compartido de pago o a un nodo de Solana dedicado de OnFinality.

Una API de Solana gratuita es un endpoint HTTP y WebSocket que habla el dialecto JSON-RPC de Solana, lo que te permite leer cuentas, enviar transacciones y suscribirte a registros sin operar un validador. Es la forma más rápida de hacer que una billetera, un script o un prototipo se comunique con la mainnet de Solana. La contrapartida es que los endpoints gratuitos son compartidos, tienen límite de velocidad y, por lo general, no están dimensionados para tráfico de producción, consultas de archivo o suscripciones WebSocket de alta frecuencia.

Esta página te ayuda a decidir si una API de Solana gratuita es suficiente para tu carga de trabajo actual, cómo verificarla con llamadas JSON-RPC reales y qué buscar cuando se te quede corta.

¿Es suficiente una API de Solana gratuita para tu carga de trabajo?

Adapta el endpoint al trabajo antes de escribir más código. Los niveles gratuitos están bien para aprender y para lecturas ligeras, pero se degradan rápidamente bajo carga sostenida, escaneos grandes de getProgramAccounts o muchos clientes WebSocket concurrentes.

Carga de trabajoIdoneidad de la API gratuitaQué observar
Prototipo de billetera o dAppNormalmente bien429 ocasionales durante demostraciones
Pruebas de CI contra devnetBien si está aisladoLímites de velocidad compartidos entre trabajos paralelos
Backend con muchas lecturas (saldos, cuentas de tokens)MarginalLimitación por IP y por método
Indexador o escaneos de getProgramAccountsDeficienteTiempos de espera, respuestas truncadas
Bot de trading o suscripciones WebSocketDeficienteSockets caídos, tormentas de reconexión
dApp de producción orientada al usuarioNo recomendadoSin SLA, sin canal de soporte

Si tu carga de trabajo está en las dos primeras filas, una API de Solana gratuita es un punto de partida razonable. Si está en las tres últimas, planifica una ruta hacia un plan compartido de pago o un nodo de Solana dedicado. OnFinality ofrece ambos, y puedes comparar opciones en la página de red de Solana y precios de RPC.

Qué significa "gratuito" para Solana JSON-RPC

Los nodos de Solana exponen una interfaz JSON-RPC sobre HTTP y, para suscripciones, sobre WebSocket. Un endpoint gratuito normalmente te ofrece:

  • Una URL HTTP pública para métodos estándar como getBalance, getAccountInfo, getLatestBlockhash y sendTransaction.
  • Una URL WebSocket pública para logsSubscribe, accountSubscribe y slotSubscribe.
  • Sin clave de API, o una clave con poca cuota fácil de obtener.

Lo que normalmente no te ofrece:

  • Rendimiento o concurrencia garantizados.
  • Archivo o estado histórico más allá de una ventana limitada.
  • Acceso prioritario durante congestión de la red.
  • Un canal de soporte cuando algo falla a las 2 a. m.

Los endpoints gratuitos son infraestructura compartida. Cuando un usuario ejecuta un escaneo pesado, todos en ese endpoint lo sienten. Esa es la razón principal por la que los niveles gratuitos están bien para aprender y son riesgosos para producción.

Probar una API de Solana gratuita con llamadas reales

Antes de comprometer código a un endpoint, ejecuta algunas comprobaciones. Comienza con una prueba de salud básica usando curl contra el endpoint público de Solana de OnFinality:

curl -s https://solana.api.onfinality.io/public \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getHealth"}'

Un nodo saludable devuelve {"jsonrpc":"2.0","result":"ok","id":1}. Luego, confirma que puedes leer una cuenta y obtener un blockhash reciente, que es lo que necesitan la mayoría de los flujos de transacciones:

curl -s https://solana.api.onfinality.io/public \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getLatestBlockhash","params":[{"commitment":"confirmed"}]}'

Si usas JavaScript, las mismas llamadas funcionan a través de @solana/web3.js:

import { Connection, PublicKey } from "@solana/web3.js";

const connection = new Connection("https://solana.api.onfinality.io/public", "confirmed");

const slot = await connection.getSlot();
const balance = await connection.getBalance(new PublicKey("11111111111111111111111111111111"));
console.log({ slot, balance });

Para suscripciones, usa la URL WebSocket:

const ws = new WebSocket("wss://solana.api.onfinality.io/public-ws");

ws.onopen = () => {
  ws.send(JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "logsSubscribe",
    params: [{ mentions: ["11111111111111111111111111111111"] }, { commitment: "confirmed" }]
  }));
};

ws.onmessage = (event) => console.log(event.data);

Ejecuta estas pruebas contra tu endpoint candidato y anota los tiempos de respuesta, las tasas de error y si ves respuestas 429 bajo carga paralela. Esos datos, no el texto de marketing, te dicen si el nivel gratuito es adecuado.

Configuración de la cadena de un vistazo

Si estás integrando Solana en una billetera o un archivo de configuración, mantén estos valores consistentes con la red a la que apuntas. La configuración de Solana mainnet de OnFinality utiliza lo siguiente:

ConfiguraciónValor
Nombre de la cadenaSolana Mainnet
Moneda nativaSOL (9 decimales)
HTTP RPChttps://solana.api.onfinality.io/public
WebSocket RPCwss://solana.api.onfinality.io/public-ws
Explorador de bloqueshttps://explorer.solana.com

Para trabajo en devnet, usa la página de red de Solana Devnet para confirmar el endpoint correcto antes de apuntar pruebas hacia allí. Mezclar URLs de mainnet y devnet es una de las causas más comunes de informes de "mi transacción desapareció".

Dónde fallan las API de Solana gratuitas

Los endpoints gratuitos fallan de maneras predecibles. Reconocer el modo de falla ahorra horas de depuración.

SíntomaCausa probableSiguiente paso
Respuestas HTTP 429Se alcanzó el límite de velocidad compartidoReducir la concurrencia o pasar a un plan de pago
getProgramAccounts agota el tiempoEscaneo grande en un nodo compartidoFiltrar por dataSlice o pasar a un nodo dedicado
Desconexiones de WebSocketTiempo de espera por inactividad o reinicio del nodoAgregar lógica de reconexión o usar un endpoint dedicado
sendTransaction devuelve "blockhash not found"Blockhash obsoleto de un nodo retrasadoActualizar el blockhash y reintentar
Alturas de slot inconsistentesNodo detrás de la puntaVerificar getSlot contra un segundo endpoint
Datos históricos faltantesSin acceso a archivo en el nivel gratuitoUsar un proveedor con capacidad de archivo

Si ves dos o más de estos en la misma semana, el nivel gratuito ya no es la herramienta adecuada. Es una señal para evaluar un plan compartido de pago o un nodo de Solana dedicado, no para agregar más lógica de reintento.

Pasar de una API de Solana gratuita a una de producción

Cuando decidas actualizar, trátalo como una migración, no como un interruptor. Una lista de verificación breve evita que cambies un conjunto de problemas por otro.

  1. Inventaría tus métodos. Enumera cada método JSON-RPC que llama tu aplicación, incluidas las suscripciones WebSocket. Los métodos de archivo y trace a menudo necesitan un plan diferente al de las lecturas estándar.
  2. Mide tu pico, no tu promedio. Los niveles gratuitos a menudo sobreviven a la carga promedio y fallan en el pico. Dimensiona para la concurrencia y la tasa de solicitudes máximas.
  3. Decide compartido vs dedicado. Los planes compartidos se adaptan a la mayoría de las dApps y backends. Los nodos de Solana dedicados se adaptan a indexadores, sistemas de trading y equipos que necesitan rendimiento predecible y aislamiento. Consulta nodos dedicados para ver la diferencia.
  4. Planifica la conmutación por error. Configura al menos dos endpoints en tu cliente para que un problema de un solo proveedor no derribe tu aplicación.
  5. Agrega monitoreo. Rastrea la tasa de error, la latencia p95 y los recuentos de reconexión de WebSocket. Alerta sobre cambios, no sobre valores absolutos.
  6. Prueba antes de la migración. Ejecuta tu inventario completo de métodos contra el nuevo endpoint en staging, luego traslada el tráfico de producción gradualmente.

OnFinality proporciona acceso a la API RPC de Solana e infraestructura de nodos dedicados, para que puedas comenzar con un plan compartido y pasar a un nodo dedicado a medida que crece tu carga de trabajo. Revisa precios de RPC y la lista de redes RPC compatibles para confirmar la cobertura actual antes de comprometerte.

Elegir entre acceso compartido y dedicado a Solana

La decisión generalmente se reduce a cuánto control necesitas sobre el rendimiento y el aislamiento.

  • Planes RPC compartidos son rentables para dApps, billeteras y backends con tráfico moderado y en ráfagas. Obtienes un endpoint gestionado con límites más altos que un nivel gratuito, sin operar un nodo.
  • Nodos de Solana dedicados le dan a tu equipo un nodo que no se comparte con otros clientes. Se adaptan a indexadores, creadores de mercado y equipos con requisitos estrictos de latencia o integridad de datos.
  • Nodos autoalojados brindan el máximo control, pero requieren hardware, monitoreo y trabajo de actualización. Muchos equipos comienzan con autoalojamiento y pasan a infraestructura gestionada una vez que el costo operativo supera el ahorro.

Si no estás seguro de cuál se adapta, la guía de selección de proveedor de RPC repasa los criterios de evaluación con más detalle.

Puntos clave

  • Una API de Solana gratuita es un endpoint JSON-RPC compartido sobre HTTP y WebSocket, adecuado para prototipos, aprendizaje y lecturas ligeras.
  • Los niveles gratuitos tienen límite de velocidad y por lo general carecen de acceso a archivo, rendimiento garantizado y soporte.
  • Prueba cualquier endpoint con getHealth, getLatestBlockhash y una suscripción WebSocket antes de construir sobre él.
  • Observa los 429, los tiempos de espera en getProgramAccounts y las desconexiones de WebSocket como señales para actualizar.
  • Pasa a un plan compartido de pago o a un nodo de Solana dedicado cuando la carga máxima, la integridad de datos o el aislamiento se conviertan en un requisito.
  • Mantén separados los endpoints de mainnet y devnet, y configura siempre la conmutación por error.

Preguntas frecuentes

¿Es segura una API de Solana gratuita para producción?

Para la mayoría de las aplicaciones de producción, no. Los endpoints gratuitos son compartidos y tienen límite de velocidad, sin garantía de rendimiento ni canal de soporte. Son mejores para prototipos, pruebas y herramientas internas de bajo tráfico. Las aplicaciones de producción deberían usar un plan compartido de pago o un nodo dedicado.

¿Cuál es la diferencia entre una API de Solana gratuita y una de pago?

Los planes de pago normalmente agregan límites de velocidad más altos, mejor aislamiento, acceso a archivo o datos históricos, prioridad durante la congestión y un canal de soporte. Los métodos JSON-RPC son los mismos; la diferencia es capacidad, confiabilidad y responsabilidad.

¿Puedo usar una API de Solana gratuita para suscripciones WebSocket?

Sí, pero espera desconexiones y tiempos de espera por inactividad. Construye lógica de reconexión y evita depender de un único WebSocket gratuito para cualquier cosa orientada al usuario. Para suscripciones sostenidas, usa un endpoint de pago o dedicado.

¿Ofrece OnFinality una API de Solana gratuita?

OnFinality proporciona endpoints RPC públicos de Solana para comenzar, además de planes compartidos de pago y nodos de Solana dedicados para cargas de trabajo de producción. Consulta la página de red de Solana y precios de RPC para ver las opciones actuales.

¿Por qué falla getProgramAccounts en endpoints gratuitos?

Es una llamada costosa que escanea muchas cuentas. Los nodos gratuitos compartidos a menudo agotan el tiempo o la rechazan. Usa dataSlice y filtros para acotar la consulta, o pasa a un nodo dedicado con acceso a archivo.

¿Cómo pruebo una API de Solana gratuita antes de usarla?

Envía una solicitud getHealth, obtén un blockhash reciente, lee una cuenta conocida y abre una suscripción WebSocket breve. Mide la tasa de error y la latencia bajo carga paralela, no solo solicitudes individuales.

Base de conocimiento RPC

Detalles RPC relacionados

Nunca te preocupes por la infraestructura nuevamente

OnFinality elimina la carga pesada de DevOps para que puedas construir de forma más inteligente y rápida.

Comenzar