Resumen
Moonriver es una red canary compatible con Ethereum en Kusama, ideal para probar dApps antes de implementarlas en Moonbeam. Esta guía cubre los endpoints RPC de Moonriver, cómo configurar wallets y herramientas, y cómo elegir un proveedor RPC confiable para uso en producción.
Lista de Verificación para la Decisión de Moonriver RPC
Antes de integrar Moonriver RPC en tu proyecto, considera lo siguiente:
| Criterio | Qué verificar | Por qué es importante |
|---|---|---|
| Tipo de red | Mainnet (chain ID 1285) vs testnet | Moonriver es una red canary con tokens MOVR reales; asegúrate de estar en la red correcta para tu caso de uso. |
| Tipo de endpoint | HTTPS vs WSS | Usa HTTPS para solicitudes estándar, WSS para suscripciones en tiempo real (ej. listeners de eventos). |
| Límites de tasa | Endpoints públicos vs privados | Los endpoints públicos tienen límites de tasa; para producción, usa un endpoint privado o un nodo dedicado. |
| Datos de archivo | Nodo completo vs nodo de archivo | Los nodos de archivo proporcionan estado histórico; necesarios para dApps que consultan datos pasados. |
| Fiabilidad del proveedor | Tiempo de actividad, latencia, soporte | Elige un proveedor con rendimiento consistente y soporte receptivo. |
| Modelo de precios | Pago por uso vs suscripción | Ajusta el modelo de precios a tu volumen esperado de solicitudes. |
| Seguridad | Gestión de claves API, cifrado | Protege tus claves API y usa HTTPS/WSS para asegurar los datos en tránsito. |
| Distribución geográfica | Ubicaciones de nodos | Múltiples regiones reducen la latencia para usuarios globales. |
¿Qué es Moonriver?
Moonriver es una red complementaria a Moonbeam, que sirve como una red canary incentivada en el ecosistema de Kusama. Proporciona un entorno completo similar a Ethereum, compatible con contratos inteligentes en Solidity y herramientas compatibles con Ethereum. Los desarrolladores usan Moonriver para probar nuevas funcionalidades y dApps en un entorno similar al de producción antes de implementarlas en Moonbeam. El token nativo es MOVR.
Detalles de la Red Moonriver
- Chain ID: 1285 (0x505 en hex)
- Moneda: MOVR
- Explorador de bloques: Moonscan
- Tiempo de bloque: ~12 segundos
- Consenso: Prueba de Participación Nominada (NPoS) con collators
Endpoints RPC de Moonriver
Para interactuar con Moonriver, necesitas un endpoint RPC. A continuación se muestran endpoints públicos comunes (con límite de tasa) y endpoints privados de proveedores.
Endpoints Públicos (para pruebas)
| Proveedor | URL HTTPS | URL WSS |
|---|---|---|
| Moonbeam Foundation | https://rpc.api.moonriver.moonbeam.network | wss://wss.api.moonriver.moonbeam.network |
| OnFinality | https://moonriver.api.onfinality.io/public | wss://moonriver.api.onfinality.io/public-ws |
| PublicNode | https://moonriver-rpc.publicnode.com | wss://moonriver-rpc.publicnode.com |
| UnitedBloc | https://moonriver.unitedbloc.com | wss://moonriver.unitedbloc.com |
Nota: Los endpoints públicos tienen límites de tasa y no son adecuados para producción. Para acceso confiable, obtén una clave API privada de un proveedor RPC.
Endpoints Privados (para producción)
Los endpoints privados ofrecen límites de tasa más altos, soporte dedicado y datos de archivo/trace opcionales. Proveedores como OnFinality ofrecen servicios RPC gestionados con planes configurables. Visita la página de red de Moonriver para más detalles.
Cómo Conectarse a Moonriver
Usando curl
curl -H "Content-Type: application/json" \
-d '{"id":1,"jsonrpc":"2.0","method":"eth_blockNumber","params":[]}' \
https://moonriver.api.onfinality.io/public
Usando ethers.js (JavaScript)
const { ethers } = require("ethers");
const provider = new ethers.JsonRpcProvider(
"https://moonriver.api.onfinality.io/public",
{ chainId: 1285, name: "moonriver" }
);
async function getBlockNumber() {
const blockNumber = await provider.getBlockNumber();
console.log("Current block:", blockNumber);
}
getBlockNumber();
Usando web3.py (Python)
from web3 import Web3
w3 = Web3(Web3.HTTPProvider("https://moonriver.api.onfinality.io/public"))
print(w3.eth.block_number)
Agregar Moonriver a MetaMask
- Abre MetaMask y haz clic en el menú desplegable de redes.
- Haz clic en "Agregar red" o "Red personalizada".
- Ingresa los siguientes detalles:
- Nombre de la red: Moonriver
- Nueva URL RPC:
https://rpc.api.moonriver.moonbeam.network(o tu endpoint privado) - Chain ID:
1285 - Símbolo de moneda: MOVR
- URL del explorador de bloques:
https://moonriver.moonscan.io
- Haz clic en "Guardar".
Elegir un Proveedor RPC para Moonriver
Al seleccionar un proveedor RPC, considera:
- Fiabilidad: Busca proveedores con tiempo de actividad consistente y baja latencia. Revisa su página de estado o comentarios de la comunidad.
- Escalabilidad: Asegúrate de que el proveedor pueda manejar tu volumen de solicitudes sin limitación.
- Funcionalidades: Algunos proveedores ofrecen nodos de archivo, APIs trace o soporte WebSocket.
- Precios: Compara planes de pago por uso vs suscripción. Visita precios RPC para más detalles.
- Soporte: El acceso a soporte técnico puede ser crucial para dApps en producción.
OnFinality proporciona endpoints RPC de Moonriver con límites de tasa configurables, soporte de archivo y opciones de nodo dedicado. Consulta la página de red de Moonriver para más información.
Errores Comunes y Solución de Problemas
Límite de Tasa
Los endpoints públicos tienen límites de tasa (ej. 25-40 req/s). Si obtienes errores 429, cambia a un endpoint privado o reduce la frecuencia de solicitudes.
Chain ID Incorrecto
Asegúrate de que tu wallet o dApp use el chain ID 1285. Usar un chain ID incorrecto puede causar fallos en las transacciones.
Desconexiones de WebSocket
Para suscripciones en tiempo real, usa endpoints WSS. Si ocurren desconexiones, implementa lógica de reconexión en tu aplicación.
Datos de Archivo Faltantes
Si tu dApp requiere estado histórico, usa un nodo de archivo. No todos los proveedores ofrecen datos de archivo.
Conclusiones Clave
- Moonriver es una red canary compatible con Ethereum en Kusama con chain ID 1285.
- Los endpoints RPC públicos están disponibles para pruebas pero tienen límites de tasa.
- Para producción, usa un endpoint privado de un proveedor confiable.
- Configura tus herramientas (MetaMask, ethers.js, etc.) con los detalles de red correctos.
- Evalúa a los proveedores según fiabilidad, escalabilidad, funcionalidades y precios.
Preguntas Frecuentes
¿Cuál es la diferencia entre Moonriver y Moonbeam?
Moonriver es una red canary en Kusama donde se prueban nuevas funcionalidades antes de implementarse en Moonbeam en Polkadot. Moonriver usa tokens MOVR y tiene valor económico real.
¿Puedo usar Moonriver para dApps en producción?
Sí, Moonriver es una red activa con activos reales. Muchas dApps se implementan en Moonriver para llegar al ecosistema de Kusama.
¿Cómo obtengo tokens MOVR?
MOVR se puede obtener a través de intercambios descentralizados (ej. SushiSwap en Moonriver) o intercambios centralizados que listan MOVR.
¿Cuáles son los límites de tasa para los endpoints públicos?
Los límites de tasa varían según el proveedor. Por ejemplo, el endpoint de Moonbeam Foundation permite 25 req/s, mientras que el endpoint público de OnFinality permite 40 req/s. Para límites más altos, usa un endpoint privado.
¿OnFinality soporta nodos de archivo de Moonriver?
Sí, OnFinality ofrece nodos de archivo para Moonriver. Consulta la página de red de Moonriver para más detalles.
Próximos Pasos
- Explora la página de red de Moonriver para crear un endpoint dedicado.
- Revisa los precios RPC para elegir un plan que se ajuste a tus necesidades.
- Navega por todas las redes soportadas para otras cadenas que puedas necesitar.
- Para una comprensión más profunda de la selección de proveedores RPC, lee nuestra guía sobre cómo elegir un proveedor RPC.