Resumen
Los endpoints RPC de nodo de Polygon permiten que las aplicaciones lean y escriban datos en la red Polygon utilizando la interfaz estándar JSON-RPC. Esta página cubre la configuración de red de mainnet y de la testnet Amoy, cómo conectarse con herramientas comunes y qué evaluar al elegir entre proveedores RPC públicos, compartidos y dedicados.
Guía rápida de decisión: ¿qué configuración de RPC de Polygon se adapta a tu aplicación?
Antes de copiar un endpoint en tu configuración, decide qué necesita realmente tu aplicación. La elección correcta depende del volumen de solicitudes, la profundidad de los datos y si puedes tolerar límites de tasa.
- Prototipado o tráfico bajo: un endpoint RPC público es suficiente. No cuesta nada y es adecuado para conexiones de wallet, lecturas simples y transacciones de prueba. Espera límites de tasa y posible tiempo de inactividad durante la congestión.
- Aplicación de producción con tráfico moderado: un servicio RPC compartido o gestionado añade fiabilidad, equilibrio de carga y, generalmente, soporte WebSocket. Esta es la opción más común para dApps, indexadores y servicios backend.
- Alto rendimiento, datos de archivo o necesidades personalizadas: un nodo de Polygon dedicado te da acceso exclusivo, sin vecinos ruidosos y control total sobre el rastreo o las consultas históricas. Úsalo cuando necesites un rendimiento constante bajo carga.
Si no estás seguro, comienza con un servicio RPC gestionado que ofrezca opciones compartidas y dedicadas. Así podrás escalar sin rediseñar tu stack. OnFinality proporciona servicios RPC para Polygon y muchas otras redes, con precios que escalan desde endpoints públicos gratuitos hasta nodos dedicados.
Configuración de red de Polygon de un vistazo
Polygon es una sidechain compatible con EVM que se asienta en Ethereum. La mainnet y la testnet Amoy tienen IDs de cadena y endpoints distintos. Usa el ID de cadena correcto en tu wallet o dApp para evitar enviar transacciones a la red equivocada.
| Propiedad | Polygon Mainnet | Polygon Amoy Testnet |
|---|---|---|
| ID de cadena | 137 | 80002 |
| Token nativo | POL | POL (test) |
| Explorador de bloques | polygonscan.com | amoy.polygonscan.com |
| Endpoint RPC | https://polygon.api.onfinality.io/public | https://polygon-amoy.api.onfinality.io/public |
| Soporte WebSocket | Sí | Sí |
Nota: Polygon migró de MATIC a POL como token nativo para gas. Usa siempre POL en tu configuración de transacciones.
¿Qué es un RPC de nodo de Polygon?
Un RPC de nodo de Polygon es un servidor que expone los datos de la blockchain de Polygon y las capacidades de envío de transacciones a través del protocolo JSON-RPC. Las aplicaciones envían solicitudes HTTP o WebSocket a un endpoint RPC para leer saldos, consultar el estado de contratos, estimar gas y transmitir transacciones.
Ejecutar un nodo completo de Polygon por ti mismo es posible, pero requiere sincronizar toda la cadena, mantener hardware y monitorear el tiempo de actividad. La mayoría de los desarrolladores usan un proveedor RPC para evitar esta sobrecarga operativa. La desventaja es confiar en un tercero para tus solicitudes, por lo que la fiabilidad del proveedor y la precisión de los datos son importantes.
Cómo conectarse a RPC de Polygon
Puedes interactuar con un endpoint RPC de Polygon usando cualquier biblioteca compatible con Ethereum, como ethers.js o viem. Aquí tienes un ejemplo básico usando ethers.js:
const { ethers } = require("ethers");
const provider = new ethers.JsonRpcProvider("https://polygon.api.onfinality.io/public");
async function getBlockNumber() {
const blockNumber = await provider.getBlockNumber();
console.log("Current block:", blockNumber);
}
getBlockNumber();
Para una llamada JSON-RPC cruda, puedes usar curl:
curl https://polygon.api.onfinality.io/public \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
Si necesitas actualizaciones en tiempo real, usa una conexión WebSocket:
const { WebSocket } = require("ws");
const ws = new WebSocket("wss://polygon.api.onfinality.io/public");
ws.on("open", () => {
ws.send(JSON.stringify({
jsonrpc: "2.0",
method: "eth_subscribe",
params: ["newHeads"],
id: 1
}));
});
ws.on("message", (data) => {
console.log("New head:", JSON.parse(data));
});
RPC de Polygon público vs. compartido vs. dedicado
Entender la diferencia entre nodos RPC públicos, compartidos y dedicados te ayuda a igualar la infraestructura a tu carga de trabajo.
- Endpoints RPC públicos son gratuitos y abiertos a cualquiera. Son convenientes para pruebas, pero a menudo tienen límites de tasa estrictos, sin SLA, y pueden volverse poco fiables durante la congestión de la red. No son adecuados para aplicaciones de producción.
- Servicios RPC compartidos (también llamados servicios gestionados o API) agrupan a múltiples usuarios en la misma infraestructura. Los proveedores añaden equilibrio de carga, caché y conmutación por error para mejorar la fiabilidad. Obtienes una clave API dedicada y límites de tasa más altos que los endpoints públicos, pero aún compartes recursos con otros clientes.
- Nodos RPC dedicados te dan un nodo o clúster de un solo inquilino. Tienes acceso exclusivo a la computación y el ancho de banda del nodo, lo que significa rendimiento constante y sin problemas de "vecino ruidoso". Esta es la mejor opción para aplicaciones de alto rendimiento, necesidades de datos de archivo o métodos RPC personalizados.
Cómo elegir un proveedor de RPC de Polygon
Al evaluar proveedores de RPC, concéntrate en los criterios que afectan directamente el rendimiento y la fiabilidad de tu aplicación. Aquí tienes una comparación de tipos comunes de proveedores:
| Tipo de proveedor | Mejor para | Consideraciones |
|---|---|---|
| OnFinality | Aplicaciones de producción que necesitan nodos compartidos o dedicados escalables | Soporte multi-cadena, precios flexibles, soporte WebSocket, nodos dedicados |
| Endpoints públicos | Pruebas, herramientas de bajo tráfico | Límites de tasa, sin SLA, posible tiempo de inactividad |
| Grandes plataformas API | Equipos que quieren un conjunto completo de herramientas | Pueden requerir niveles de precios más altos para producción |
| Nodos autoalojados | Equipos con capacidad de DevOps | Control total, pero alto costo operativo |
Criterios clave de evaluación:
- Tiempo de actividad y fiabilidad: Busca proveedores que publiquen estadísticas de tiempo de actividad u ofrezcan SLA. Evita hacer afirmaciones absolutas; en su lugar, revisa sus páginas de estado y rendimiento histórico.
- Límites de tasa y rendimiento: Comprende los límites de solicitudes por segundo (RPS) para tu plan. Los endpoints públicos a menudo limitan a unas pocas solicitudes por segundo, mientras que los nodos dedicados pueden manejar mucho más.
- Disponibilidad de datos: ¿Necesitas datos de archivo (estado histórico) o métodos de rastreo? No todos los proveedores los ofrecen. Verifica si el proveedor soporta
eth_getLogscon rangos grandes odebug_traceTransaction. - Soporte WebSocket: Para aplicaciones en tiempo real, asegúrate de que el proveedor ofrezca un endpoint WebSocket estable.
- Modelo de precios: Compara precios por solicitud, por RPS o tarifa plana mensual. Estima tu volumen mensual de solicitudes para elegir el plan más rentable.
- Distribución geográfica: Los proveedores con múltiples regiones pueden reducir la latencia para tus usuarios.
Configuración de un nodo de Polygon con OnFinality
OnFinality ofrece nodos RPC de Polygon tanto compartidos como dedicados. Para comenzar:
- Crea una cuenta en la plataforma OnFinality.
- Navega a la página de red de Polygon y selecciona la red (mainnet o testnet Amoy).
- Elige un plan de nodo compartido o dedicado. Para producción, un nodo dedicado te da un endpoint privado y mayor rendimiento.
- Copia tu clave API y la URL del endpoint en la configuración de tu aplicación.
Para un nodo dedicado, también puedes habilitar el modo de archivo para acceder al estado histórico. Esto es útil para análisis, indexadores y aplicaciones que necesitan saldos o eventos pasados.
Errores comunes y solución de problemas
Incluso con un proveedor RPC fiable, puedes encontrar problemas. Aquí hay problemas comunes y cómo solucionarlos:
- ID de cadena incorrecto: Usar el ID de cadena 137 para Amoy o 80002 para mainnet hará que las transacciones fallen. Verifica siempre tu configuración de red.
- Límite de tasa: Si ves
429 Too Many Requests, estás alcanzando el límite de tasa. Reduce la frecuencia de solicitudes, usa el procesamiento por lotes o actualiza a un plan de nivel superior. - Desconexiones de WebSocket: Las conexiones WebSocket pueden caerse debido a problemas de red o reinicios del servidor. Implementa lógica de reconexión con retroceso exponencial.
- Tiempos de espera de
eth_getLogs: Consultar registros en un rango de bloques grande puede agotar el tiempo de espera. Usa rangos más pequeños y pagina. - Errores de nonce: Si envías múltiples transacciones desde la misma dirección, asegúrate de usar el nonce correcto. Consulta nuestra guía de nonce para más detalles.
Monitoreo de tu uso de RPC de Polygon
Una vez que tu aplicación esté en vivo, monitorea tu uso de RPC para evitar sorpresas. Rastrea métricas como:
- Volumen de solicitudes: ¿Cuántas solicitudes por segundo/minuto estás enviando?
- Tasa de error: Porcentaje de solicitudes fallidas (tiempos de espera, límites de tasa, etc.).
- Latencia: Tiempos de respuesta promedio y p95.
- Estabilidad de la conexión WebSocket: ¿Con qué frecuencia se caen las conexiones?
La mayoría de los proveedores de RPC ofrecen un panel con estas métricas. La plataforma de OnFinality incluye análisis de uso tanto para nodos compartidos como dedicados.
Conclusiones clave
- La mainnet de Polygon usa el ID de cadena 137, y la testnet Amoy usa 80002. Usa siempre el ID de cadena correcto.
- Los endpoints RPC públicos son adecuados para pruebas, pero no para producción. Usa un servicio gestionado o dedicado para un rendimiento fiable.
- Evalúa a los proveedores según el tiempo de actividad, los límites de tasa, la disponibilidad de datos, el soporte WebSocket y los precios.
- OnFinality ofrece nodos RPC de Polygon compartidos y dedicados con precios flexibles y soporte multi-red.
- Monitorea tu uso de RPC para optimizar costos y rendimiento.
Preguntas frecuentes
¿Cuál es la diferencia entre el RPC de mainnet de Polygon y el de la testnet Amoy?
El RPC de mainnet se conecta a la red de Polygon en vivo con tokens POL reales. El RPC de la testnet Amoy se conecta a una red de prueba donde puedes usar tokens de prueba gratuitos para desarrollo. Tienen diferentes IDs de cadena y endpoints.
¿Puedo usar un RPC público de Polygon para producción?
No se recomienda. Los endpoints públicos tienen límites de tasa y sin garantías de tiempo de actividad, lo que puede causar que tu aplicación falle bajo carga. Un servicio RPC gestionado es una opción más segura.
¿OnFinality soporta WebSocket para Polygon?
Sí, OnFinality soporta conexiones HTTP y WebSocket para la mainnet de Polygon y la testnet Amoy.
¿Cómo obtengo POL de prueba para Amoy?
Puedes usar el faucet oficial de Polygon para solicitar POL de prueba en Amoy. Consulta la página de red de Polygon para más detalles.
¿Qué es un nodo de Polygon dedicado?
Un nodo de Polygon dedicado es un nodo de un solo inquilino aprovisionado exclusivamente para tu uso. Proporciona rendimiento constante, mayor rendimiento y acceso opcional a datos de archivo.
¿Cuánto cuesta un RPC de Polygon?
Los precios varían según el proveedor y el plan. OnFinality ofrece un endpoint público gratuito y planes de pago para nodos compartidos y dedicados. Consulta precios de RPC para tarifas actuales.