Logo
Nuevos usuarios de RPC: 35% de descuento el primer mesVer oferta
OnFinality Learn
Guías de redes y protocolos12 min de lectura

Endpoints RPC de Monad: Configuración de Testnet, Métodos y Latencia

Aprende a conectarte a los endpoints JSON-RPC compatibles con EVM de Monad, añade Monad a MetaMask, ejecuta ejemplos con curl y valida la salud y latencia del endpoint.

TL;DR

Monad es una blockchain de Capa 1 compatible con EVM que ofrece alto rendimiento y ejecución paralela. Esta guía explica cómo encontrar y usar los endpoints RPC de Monad, añadir Monad a MetaMask, realizar llamadas JSON-RPC básicas y validar la salud y latencia del endpoint. También cubre problemas comunes y limitaciones.

Respuesta directa: Endpoints RPC de Monad

Monad es una blockchain de Capa 1 compatible con EVM que tiene como objetivo proporcionar un alto rendimiento mediante ejecución paralela y un mecanismo de consenso personalizado. Para interactuar con Monad, necesitas un endpoint RPC que hable el protocolo JSON-RPC estándar de Ethereum. Al momento de escribir esto, Monad está en fase de testnet, y el endpoint RPC público oficial es https://testnet-rpc.monad.xyz. El ID de cadena para la testnet de Monad es 10143. Puedes usar este endpoint para consultar datos de la blockchain, enviar transacciones y desplegar contratos inteligentes. Sin embargo, ten en cuenta que los endpoints y los parámetros de red pueden cambiar antes del lanzamiento final de la mainnet, por lo que siempre debes consultar la documentación para desarrolladores de Monad para obtener la información más reciente.

Para acceso de nivel de producción, puedes usar un proveedor de RPC gestionado como OnFinality, que ofrece endpoints fiables y escalables. OnFinality proporciona una página dedicada de endpoints RPC de Monad donde puedes encontrar los últimos endpoints y detalles de conexión. Esta guía te llevará a través de la configuración, métodos comunes y cómo medir la latencia.

  • RPC de testnet oficial: https://testnet-rpc.monad.xyz
  • ID de cadena: 10143
  • Endpoint WebSocket (WSS): wss://testnet-rpc.monad.xyz/ws (si está disponible)
  • Verifica siempre los endpoints actuales en fuentes oficiales.

Superficie JSON-RPC compatible con EVM de Monad

Monad está diseñado para ser totalmente compatible con EVM, lo que significa que soporta los mismos métodos JSON-RPC que Ethereum. Esto incluye métodos estándar como eth_chainId, eth_blockNumber, eth_getBalance, eth_call, eth_sendRawTransaction, y muchos otros. Esta compatibilidad permite a los desarrolladores usar herramientas familiares como MetaMask, Hardhat y ethers.js sin cambios significativos.

Internamente, Monad utiliza un motor de ejecución paralela que puede procesar transacciones de forma concurrente, pero esto es transparente para la capa RPC. La interfaz JSON-RPC sigue siendo estándar, por lo que puedes interactuar con Monad igual que lo harías con Ethereum. Para una lista completa de métodos soportados, consulta la documentación de Monad.

Un aspecto importante es que la testnet de Monad puede tener mecánicas de gas o tiempos de bloque diferentes en comparación con Ethereum, pero los métodos RPC en sí son idénticos. Esto significa que cualquier herramienta de Ethereum que funcione con JSON-RPC debería funcionar con Monad sin problemas.

Cómo encontrar los endpoints RPC actuales de testnet y mainnet

La forma más fiable de encontrar los endpoints RPC actuales de Monad es consultar la documentación oficial de Monad y las páginas de estado de la red. A la fecha de publicación, el RPC de testnet es https://testnet-rpc.monad.xyz. Para conexiones WebSocket, puedes usar wss://testnet-rpc.monad.xyz/ws si está soportado. Sin embargo, estos endpoints están sujetos a cambios, especialmente a medida que Monad avanza hacia la mainnet.

Para un endpoint gestionado y estable, OnFinality proporciona una página dedicada de endpoints RPC de Monad donde puedes encontrar los últimos endpoints, incluyendo URLs HTTP y WebSocket. OnFinality también ofrece una página de red para la mainnet de Monad (una vez que la mainnet esté activa) y endpoints de testnet. Usar un proveedor gestionado asegura alta disponibilidad y rendimiento, lo cual es crítico para aplicaciones de producción.

Cuando se lance la mainnet, el ID de cadena probablemente cambiará y se proporcionarán nuevos endpoints. Siempre verifica el ID de cadena y los endpoints en fuentes oficiales antes de desplegar tu aplicación.

Añadir Monad a MetaMask

Para interactuar con Monad usando MetaMask, necesitas añadir una red personalizada. Estos son los pasos:

  1. Abre MetaMask y haz clic en el menú desplegable de redes en la parte superior. 2. Haz clic en 'Añadir red' o 'RPC personalizado'. 3. Completa los siguientes detalles: Nombre de la red: Monad Testnet, Nueva URL RPC: https://testnet-rpc.monad.xyz, ID de cadena: 10143, Símbolo de moneda: MON, URL del explorador de bloques: https://testnet.monadexplorer.com (o el explorador oficial). 4. Haz clic en Guardar. Ahora deberías estar conectado a la testnet de Monad.

Alternativamente, puedes usar el endpoint RPC de OnFinality si tienes uno dedicado. El proceso es el mismo, solo reemplaza la URL RPC con tu endpoint de OnFinality. Para más detalles, consulta la documentación de Monad o el Asistente RPC de OnFinality.

  • Nombre de la red: Monad Testnet
  • URL RPC: https://testnet-rpc.monad.xyz
  • ID de cadena: 10143
  • Símbolo de moneda: MON
  • Explorador de bloques: https://testnet.monadexplorer.com

Ejemplos ejecutables con curl: eth_chainId, eth_blockNumber, eth_getBalance

Puedes interactuar con el endpoint RPC de Monad usando llamadas JSON-RPC estándar. A continuación se muestran ejemplos ejecutables de curl para métodos comunes. Estos ejemplos asumen que tienes curl instalado en tu sistema.

Primero, obtengamos el ID de cadena:

curl -X POST https://testnet-rpc.monad.xyz \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

Salida esperada: {"jsonrpc":"2.0","result":"0x27af","id":1}. El resultado 0x27af es la representación hexadecimal de 10143.

A continuación, obtén el número de bloque más reciente:

curl -X POST https://testnet-rpc.monad.xyz \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Salida esperada: {"jsonrpc":"2.0","result":"0x...","id":1} donde 0x... es el número de bloque actual en hexadecimal. Puedes convertirlo a decimal usando una herramienta como printf '%d\n' 0x....

Finalmente, obtén el saldo de una dirección (reemplaza 0x... con una dirección válida):

curl -X POST https://testnet-rpc.monad.xyz \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xYourAddress","latest"],"id":1}'

Salida esperada: {"jsonrpc":"2.0","result":"0x...","id":1} donde 0x... es el saldo en wei. Para obtener MON, divide por 10^18.

curl -X POST https://testnet-rpc.monad.xyz -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
curl -X POST https://testnet-rpc.monad.xyz -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
curl -X POST https://testnet-rpc.monad.xyz -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xYourAddress","latest"],"id":1}'

Cómo validar la latencia y la salud de un endpoint público

La latencia es un factor crítico para los endpoints RPC, especialmente para aplicaciones que requieren datos en tiempo real. Para medir la latencia, puedes usar herramientas como curl con opciones de tiempo o herramientas dedicadas de monitoreo de red. Aquí tienes una forma sencilla de medir el tiempo de ida y vuelta de una llamada JSON-RPC:

curl -o /dev/null -s -w "Total time: %{time_total}s\n" -X POST https://testnet-rpc.monad.xyz -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Este comando mostrará el tiempo total que tarda la solicitud. Sin embargo, ten en cuenta que esto mide el tiempo desde tu máquina hasta el endpoint y de vuelta, lo que incluye la latencia de red. Para una medición más precisa, puedes usar un servicio como el Asistente RPC de OnFinality que proporciona estadísticas de latencia desde múltiples ubicaciones.

Para comprobar la salud de un endpoint, también puedes verificar que devuelve el ID de cadena correcto y que el número de bloque aumenta con el tiempo. Un endpoint saludable debería responder rápida y consistentemente. Si experimentas tiempos de espera, consulta nuestra guía sobre diagnóstico y corrección de tiempos de espera RPC.

Recuerda que los endpoints públicos pueden tener límites de velocidad y pueden ser más lentos durante las horas pico. Para producción, considera usar un proveedor gestionado como OnFinality, que ofrece servicios de API con rendimiento y tiempo de actividad garantizados.

  • Usa curl -w para medir el tiempo total.
  • Verifica que el ID de cadena sea correcto.
  • Monitorea la progresión del número de bloque.
  • Considera usar un proveedor gestionado para un rendimiento consistente.
curl -o /dev/null -s -w "Total time: %{time_total}s\n" -X POST https://testnet-rpc.monad.xyz -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Fallos comunes y soluciones

Al trabajar con endpoints RPC de Monad, puedes encontrarte con varios problemas comunes. Aquí tienes algunos fallos típicos y cómo solucionarlos:

  1. ID de cadena incorrecto: Si obtienes un error como invalid chain id, asegúrate de usar 10143 para la testnet. Verifica tu configuración en MetaMask o en tu aplicación.

  1. Tiempos de espera de conexión: Si tus solicitudes agotan el tiempo, el endpoint puede estar caído o sobrecargado. Prueba con un endpoint diferente o un proveedor gestionado. Consulta nuestra guía de tiempos de espera RPC para solucionar problemas detallados.

  1. Límite de velocidad: Los endpoints públicos a menudo tienen límites de velocidad. Si recibes 429 Too Many Requests, reduce la frecuencia de tus solicitudes o usa un endpoint dedicado de OnFinality.

  1. Fondos insuficientes: Al enviar transacciones, asegúrate de que tu cuenta tenga suficiente MON para el gas. Puedes obtener MON de testnet en el grifo de testnet de Monad.

  1. Método no soportado: Si obtienes un error method not found, verifica que el método sea soportado por Monad. La mayoría de los métodos de Ethereum son soportados, pero algunos pueden estar deshabilitados por razones de seguridad.

  • Verifica el ID de cadena y la configuración de red.
  • Usa un endpoint fiable o un proveedor gestionado.
  • Monitorea los límites de velocidad y ajusta la frecuencia de solicitudes.
  • Asegura fondos suficientes de testnet para las transacciones.
  • Verifica el soporte de métodos en la documentación oficial.

Compensaciones y limitaciones

Si bien la compatibilidad EVM de Monad facilita comenzar, hay limitaciones importantes a tener en cuenta. Primero, los endpoints de testnet están sujetos a cambios sin previo aviso, y la red puede ser reiniciada. Esto significa que cualquier dato que almacenes en la testnet puede perderse. Siempre diseña tu aplicación para manejar reinicios de red.

Segundo, los endpoints públicos no son puntos de referencia de rendimiento. Se proporcionan para desarrollo y pruebas, y pueden tener límites de velocidad o tiempo de inactividad. Para producción, debes usar un proveedor de RPC gestionado como OnFinality, que ofrece planes de precios que garantizan tiempo de actividad y rendimiento.

Tercero, la ejecución paralela de Monad puede llevar a un orden de transacciones o comportamiento de gas diferente en comparación con Ethereum. Si bien la interfaz RPC es idéntica, el modelo de consenso y ejecución subyacente puede afectar cómo estimas el gas o manejas los nonces. Siempre prueba a fondo en la testnet.

Finalmente, las mediciones de latencia que realices son relativas a tu ubicación y condiciones de red. No representan el rendimiento de la red de Monad en sí. Para comparaciones de latencia precisas, usa una herramienta que pruebe desde múltiples ubicaciones geográficas, como el Asistente RPC de OnFinality.

  • Los endpoints de testnet pueden cambiar o reiniciarse.
  • Los endpoints públicos no son puntos de referencia de rendimiento.
  • La ejecución paralela puede afectar el manejo de gas y nonces.
  • Las mediciones de latencia dependen de la ubicación.

Próximos pasos y recursos adicionales

Ahora que tienes una comprensión sólida de los endpoints RPC de Monad, puedes comenzar a construir en Monad. Aquí tienes algunos próximos pasos:

  1. Obtén MON de testnet del grifo de Monad para financiar tus transacciones. 2. Despliega un contrato inteligente usando Hardhat o Foundry, apuntando al endpoint RPC de Monad. 3. Monitorea el estado de la red a través de la página de estado de Monad. 4. Explora la documentación de Monad para temas avanzados como ejecución paralela y consenso.

Para una infraestructura RPC fiable, considera usar el servicio de API de OnFinality. También puedes consultar la página de red de la mainnet de Monad para actualizaciones cuando se lance la mainnet. Si encuentras algún problema, nuestra guía de tiempos de espera RPC y el centro de aprendizaje son excelentes recursos.

Recuerda siempre verificar los endpoints y los ID de cadena en fuentes oficiales, ya que pueden cambiar. ¡Feliz construcción en Monad!

  • Obtén MON de testnet del grifo.
  • Despliega un contrato inteligente usando herramientas estándar de Ethereum.
  • Monitorea el estado de la red y las actualizaciones.
  • Usa OnFinality para servicios RPC de nivel de producción.

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