Logo
RPC Assistant

¿Qué es un nodo público de Solana y cuándo deberías usar uno?

Resumen

Un nodo público de Solana es un endpoint RPC gratuito operado por la comunidad que permite a los desarrolladores interactuar con los clústeres de Solana sin ejecutar su propia infraestructura. Aunque es conveniente para prototipos y pruebas de bajo volumen, los nodos públicos tienen límites de tasa estrictos y sin SLA, lo que los hace inadecuados para dApps en producción. Este artículo explica cómo funcionan los nodos públicos, sus limitaciones y cuándo actualizar a un proveedor RPC dedicado.

Lista de verificación para decidir entre nodo público y RPC dedicado en Solana

Antes de elegir entre un nodo público y un proveedor RPC dedicado, evalúa estos factores:

CriterioQué verificarPor qué es importante
Volumen de solicitudesEstimar llamadas RPC diariasLos nodos públicos limitan agresivamente (ej. 100 solicitudes/10s por IP)
Requisito de SLA¿Necesitas garantías de tiempo de actividad?Los nodos públicos no tienen SLA; los proveedores dedicados ofrecen alta disponibilidad
Frescura de datos¿Necesitas datos de bloques recientes?Los nodos públicos pueden retrasarse respecto al último bloque
Soporte WebSocket¿Suscripciones en tiempo real?Los endpoints WebSocket públicos suelen tener límites más estrictos
PrivacidadExposición de datos de transaccionesLos nodos públicos ven todas las solicitudes; los nodos dedicados aíslan tu tráfico
Latencia geográfica¿Dónde están tus usuarios?Los nodos públicos tienen regiones limitadas; los proveedores dedicados ofrecen PoPs globales
Datos de archivo¿Necesitas estado histórico?Los nodos públicos normalmente solo sirven slots recientes
Configuración personalizada¿Necesitas métodos o flags RPC específicos?Los nodos públicos son fijos; los nodos dedicados se pueden ajustar

¿Qué es un nodo público de Solana?

Un nodo público de Solana es un endpoint JSON-RPC operado por la Fundación Solana o un tercero, disponible para que cualquiera lo use sin autenticación. Estos endpoints permiten a los desarrolladores enviar transacciones, consultar saldos de cuentas y obtener datos de bloques sin ejecutar su propio validador o nodo RPC.

Solana actualmente ofrece tres clústeres públicos:

  • Mainnet Beta: https://api.mainnet-beta.solana.com
  • Devnet: https://api.devnet.solana.com
  • Testnet: https://api.testnet.solana.com

Estos endpoints son gratuitos y abiertos, pero vienen con limitaciones significativas que los hacen inadecuados para aplicaciones en producción.

Cómo funcionan los nodos públicos

Los nodos públicos son típicamente operados por la Fundación Solana o miembros de la comunidad como un servicio al ecosistema. Aceptan conexiones HTTP y WebSocket entrantes y las retransmiten al clúster de Solana. Debido a que son compartidos entre todos los usuarios, imponen límites de tasa para prevenir abusos y garantizar un uso justo.

Una interacción típica con un nodo público se ve así:

curl https://api.mainnet-beta.solana.com -X POST -H "Content-Type: application/json" -d '
  {
    "jsonrpc": "2.0",
    "id": 1,
    "method": "getSlot"
  }
'

Esto devuelve el número de slot actual. Aunque es simple, depender de este endpoint para tráfico de producción es arriesgado.

Límites de tasa y restricciones

Los nodos públicos de Solana imponen límites de tasa que varían según el clúster y el endpoint. Al momento de escribir esto, los límites comunes incluyen:

  • 100 solicitudes por 10 segundos por IP para Mainnet Beta
  • 200 solicitudes por 10 segundos por IP para Devnet
  • 500 solicitudes por 10 segundos por IP para Testnet

Estos límites están sujetos a cambios sin previo aviso. Superarlos resulta en respuestas HTTP 429 o conexiones caídas. Para cualquier aplicación con más de un puñado de usuarios, estos límites se convierten en un cuello de botella.

Adicionalmente, los nodos públicos pueden:

  • Limitar métodos pesados como getProgramAccounts o getSignaturesForAddress
  • No permitir suscripciones WebSocket por largos períodos
  • Servir datos desactualizados si el nodo está detrás del último bloque del clúster

Cuándo usar un nodo público

Los nodos públicos son apropiados para:

  • Prototipado rápido: Probar un script o contrato inteligente durante el desarrollo
  • Consultas de bajo volumen: Verificar saldos de cuentas o estados de transacciones manualmente
  • Aprendizaje y experimentación: Entender la API RPC de Solana sin comprometerse con infraestructura
  • Hackathons y demostraciones: Proyectos de corta duración donde el tiempo de actividad no es crítico

Por ejemplo, obtener el último hash de bloque para un script único:

const web3 = require('@solana/web3.js');
const connection = new web3.Connection('https://api.mainnet-beta.solana.com');
connection.getRecentBlockhash().then(console.log);

Esto funciona bien para una prueba local, pero implementarlo en producción alcanzaría rápidamente los límites de tasa.

Cuándo actualizar a un proveedor RPC dedicado

Si tu aplicación atiende a usuarios reales, procesa más de unos pocos cientos de solicitudes por día, o requiere rendimiento confiable, necesitas un proveedor RPC dedicado. Estas son las señales de que es hora de cambiar:

  • Errores de límite de tasa: Tu aplicación recibe respuestas 429 con frecuencia
  • Latencia inconsistente: Los tiempos de respuesta varían enormemente
  • Desconexiones WebSocket: Las suscripciones se caen inesperadamente
  • Datos desactualizados: Las consultas devuelven información de slots obsoleta
  • Sin soporte: No puedes obtener ayuda cuando el endpoint se cae

Los proveedores dedicados ofrecen:

  • Límites de tasa más altos o claros: Adaptados a tu tráfico
  • Balanceo de carga global: Múltiples nodos en diferentes regiones
  • Tiempo de actividad respaldado por SLA: Disponibilidad garantizada
  • Infraestructura dedicada: Nodos aislados para rendimiento consistente
  • Datos de archivo y trace: Acceso a estado histórico
  • Configuraciones personalizadas: Ajustar flags RPC para tu caso de uso

Cómo elegir un proveedor RPC de Solana

Al evaluar proveedores, considera:

  1. Rendimiento: ¿Pueden manejar tu volumen máximo de solicitudes?
  2. Latencia: ¿Dónde están ubicados sus nodos en relación a tus usuarios?
  3. Confiabilidad: ¿Cuál es su tiempo de actividad histórico? ¿Publican páginas de estado?
  4. Acceso a datos: ¿Soportan archivo, WebSocket y gRPC?
  5. Precios: ¿Son predecibles y escalables?

OnFinality ofrece endpoints RPC de Solana con opciones compartidas y dedicadas, soportando Mainnet, Devnet y Testnet. Puedes comenzar con un nivel gratuito y escalar según sea necesario. Consulta nuestros precios RPC para más detalles.

Errores comunes con nodos públicos

1. Asumir disponibilidad

Los nodos públicos pueden caerse sin previo aviso. Los endpoints de la Fundación Solana han experimentado interrupciones durante la congestión de la red. Siempre ten un endpoint de respaldo.

2. Ignorar los límites de tasa

Incluso una dApp simple puede exceder 100 solicitudes por 10 segundos si sondea con frecuencia. Implementa estrategias de caché y retroceso.

3. Usar nodos públicos en producción

Los nodos públicos explícitamente no están diseñados para producción. La documentación de Solana advierte: "Estos endpoints están sujetos a límites de tasa y no se garantiza su disponibilidad".

4. No monitorear la latencia

La latencia de los nodos públicos puede dispararse durante alto tráfico. Usa una herramienta de monitoreo para rastrear los tiempos de respuesta y cambia de proveedor si es necesario.

Configurar una conexión confiable a Solana

Para producción, configura tu aplicación para usar un endpoint RPC dedicado con lógica de respaldo:

const connection = new web3.Connection(
  'https://solana.api.onfinality.io/public',
  {
    commitment: 'confirmed',
    confirmTransactionInitialTimeout: 60000
  }
);

Este ejemplo usa el endpoint público de OnFinality, que ofrece límites más altos que el endpoint predeterminado de la Fundación Solana. Para un rendimiento aún mejor, considera un nodo dedicado.

Conclusiones clave

  • Los nodos públicos de Solana son gratuitos pero tienen límites de tasa estrictos y sin SLA.
  • Son adecuados solo para prototipado y pruebas de bajo volumen.
  • Las aplicaciones en producción requieren un proveedor RPC dedicado con rendimiento y tiempo de actividad garantizados.
  • Al elegir un proveedor, evalúa rendimiento, latencia, confiabilidad y precios.
  • Siempre implementa endpoints de respaldo y caché para minimizar la dependencia de un solo nodo.

Preguntas frecuentes

P: ¿Puedo usar un nodo público de Solana para una dApp en producción? R: No se recomienda. Los nodos públicos tienen límites de tasa, sin SLA y pueden no estar disponibles durante la congestión de la red. Usa un proveedor RPC dedicado para producción.

P: ¿Cuál es el límite de tasa para los nodos públicos de Solana? R: Aproximadamente 100 solicitudes por 10 segundos por IP para Mainnet Beta, pero los límites pueden cambiar. Consulta la documentación oficial de Solana para la información más reciente.

P: ¿Cómo encuentro una lista de nodos públicos de Solana? R: La Fundación Solana publica endpoints para cada clúster. Listas mantenidas por la comunidad, como el repositorio de extrnode en GitHub, agregan muchos endpoints públicos.

P: ¿Cuál es la diferencia entre un nodo público y un nodo dedicado? R: Un nodo público es compartido entre todos los usuarios, con límites de tasa y sin garantías. Un nodo dedicado se aprovisiona para tu uso exclusivo, ofreciendo mayor rendimiento, menor latencia y un SLA.

P: ¿OnFinality ofrece nodos públicos de Solana? R: Sí, OnFinality proporciona endpoints públicos para Solana Mainnet, Devnet y Testnet. Para cargas de trabajo de producción, recomendamos nuestro servicio de nodo dedicado. Consulta nuestras redes compatibles para más detalles.

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