Resumen
El RPC de Polygon más rápido es el que mantiene tu carga de trabajo específica con buena capacidad de respuesta: baja latencia de ida y vuelta para tus usuarios, suficiente rendimiento para tu mezcla de solicitudes y un comportamiento predecible ante ráfagas. Los números de referencia brutos importan menos que cómo un endpoint maneja tus llamadas a eth_call, eth_getLogs y eth_sendRawTransaction durante la carga máxima.
Esta página explica qué impulsa realmente la velocidad de un RPC de Polygon, cómo medirla frente a tu propio tráfico y cuándo un endpoint compartido es suficiente frente a cuándo un nodo dedicado de Polygon te da más margen de manera consistente. También cubre la configuración de la cadena, la conmutación por error y las compensaciones que debes sopesar antes de comprometerte.
Qué significa realmente "más rápido" para un endpoint RPC de Polygon
Cuando los desarrolladores buscan el RPC de Polygon más rápido, normalmente quieren una de tres cosas: la menor latencia para una dApp orientada al usuario, el mayor rendimiento para un indexador o bot de backend, o el comportamiento más consistente durante picos de tráfico. Esos son problemas diferentes, y un único número de referencia rara vez responde a los tres.
Polygon PoS produce bloques rápidamente, por lo que un endpoint que va por detrás de la cabeza de la cadena hará que tu aplicación se sienta lenta incluso si el viaje de ida y vuelta de red es corto. Por lo tanto, la velocidad es una combinación de:
- Distancia de red entre tu cliente y el nodo RPC.
- Salud del nodo — si el nodo está sincronizado con la cabeza de la cadena y no está saturado.
- Costo de la solicitud — llamadas pesadas como
eth_getLogssobre rangos amplios de bloques tardan mucho más que un simpleeth_blockNumber. - Manejo de concurrencia — cómo se comporta el endpoint cuando llegan muchas solicitudes a la vez.
Un endpoint público puede ser perfectamente rápido para una billetera que consulta un saldo cada pocos segundos. Ese mismo endpoint puede ser la elección equivocada para un servicio que emite miles de solicitudes eth_call por minuto.
Recomendación rápida: adapta el endpoint a la carga de trabajo
Antes de comparar proveedores, decide qué perfil se ajusta a tu aplicación. Esta tabla asigna cargas de trabajo comunes de Polygon al tipo de endpoint que suele servirlas mejor.
| Carga de trabajo | Patrón de llamadas típico | Endpoint que suele encajar |
|---|---|---|
| Billetera o dApp simple | Lecturas de saldo, envíos ocasionales | RPC compartido/público suele ser suficiente |
| Bot de trading o guardián de liquidaciones | eth_call frecuente, eth_sendRawTransaction rápido | RPC compartido o dedicado de baja latencia |
| Indexador o backend de analítica | eth_getLogs amplio, lecturas de archivo | Nodo dedicado con acceso a archivo |
| Mint de NFT o lanzamiento de alto tráfico | Ráfaga de envíos y lecturas | Nodo dedicado con margen para ráfagas |
| Puente u oráculo | Lecturas continuas más vigilancia de eventos | Nodo dedicado con suscripciones WebSocket |
Si no estás seguro, empieza en un endpoint compartido, mide tu latencia real y tasa de errores, y pasa a un nodo dedicado de Polygon solo cuando puedas señalar un cuello de botella específico. OnFinality ofrece tanto acceso compartido a la API RPC como infraestructura de nodos dedicados para Polygon, para que puedas escalar de la misma manera en que mides.
Configuración de la cadena Polygon de un vistazo
Si estás agregando Polygon a una billetera o a una biblioteca cliente, estos son los valores que necesitas. Coinciden con la configuración de la red Polygon de OnFinality.
| Configuración | Valor |
|---|---|
| Nombre de la red | Polygon Mainnet |
| ID de cadena | 137 |
| Moneda nativa | POL (18 decimales) |
| Explorador de bloques | https://polygonscan.com |
| URL RPC pública | https://polygon.api.onfinality.io/public |
| Transportes | HTTP y WebSocket |
Para trabajo en testnet, Polygon Amoy usa el ID de cadena 80002 con el explorador en https://amoy.polygonscan.com. Puedes encontrar detalles tanto de mainnet como de testnet en la página de la red Polygon.
Cómo medir la latencia frente a tu propio tráfico
Los benchmarks de proveedores son útiles como punto de partida, pero el único número que importa es la latencia que experimentan tus usuarios desde tu infraestructura. Mídela directamente.
Una sonda simple es cronometrar repetidamente una llamada ligera y registrar la distribución, no solo el promedio. La cola importa más que la media: un p95 que se dispara durante las horas pico perjudicará a una interfaz de trading mucho más que una mediana ligeramente superior.
# Time a lightweight call 20 times and look at the spread
for i in $(seq 1 20); do
curl -s -o /dev/null -w "%{time_total}\n" \
-X POST https://polygon.api.onfinality.io/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'
done
Ejecuta la misma sonda desde la región donde realmente están tu backend o tus usuarios. Un nodo que es rápido desde un continente puede ser más lento desde otro, y el enrutamiento perimetral estilo CDN no ayuda una vez que la solicitud llega al propio nodo RPC.
Para una prueba más realista, reproduce una muestra de tus llamadas de producción — incluidas las pesadas — y mide tanto la latencia como la tasa de errores. Un proveedor que responde rápido pero ocasionalmente descarta solicitudes eth_getLogs no es más rápido en la práctica.
Leer una respuesta JSON-RPC y confirmar que estás en la cadena correcta
Antes de confiar en cualquier endpoint, confirma que está sirviendo Polygon mainnet y que está sincronizado. Una verificación rápida de eth_chainId detecta endpoints mal configurados a tiempo.
// viem example: verify chain and read the latest block
import { createPublicClient, http } from 'viem';
import { polygon } from 'viem/chains';
const client = createPublicClient({
chain: polygon,
transport: http('https://polygon.api.onfinality.io/public'),
});
const chainId = await client.getChainId(); // should be 137
const block = await client.getBlockNumber();
console.log({ chainId, block });
Si eth_chainId devuelve algo distinto de 137, estás apuntando a la red equivocada. Si eth_blockNumber está muy por detrás del último bloque en un explorador público, el nodo está retrasado y tus lecturas serán obsoletas.
De dónde suele venir la latencia
Cuando un RPC de Polygon se siente lento, la causa suele ser una de estas, en orden aproximado de frecuencia:
- Consultas pesadas.
eth_getLogssobre un rango amplio de bloques es el culpable más común. Reduce el rango o usa un proveedor que soporte consultas de archivo de manera eficiente. - Distancia geográfica. Tu cliente y el nodo están lejos, lo que agrega tiempo de ida y vuelta a cada llamada.
- Límites de tasa en endpoints compartidos. Los niveles públicos y compartidos pueden limitar las ráfagas, lo que se manifiesta como errores o colas en lugar de lentitud bruta.
- Saturación del nodo. Un nodo bajo carga pesada de muchos inquilinos responde más lentamente incluso a llamadas simples.
- Problemas del lado del cliente. La falta de agrupación de conexiones, la ausencia de reintentos o los patrones de solicitud síncronos pueden hacer que un endpoint rápido se sienta lento.
Diagnosticar cuál aplica en tu caso es el camino más rápido hacia una solución real. Instrumenta tus llamadas con etiquetas de tiempo y error, y luego observa las fallas más lentas y frecuentes.
¿Endpoint compartido o nodo dedicado?
Esta es la decisión central de construir versus comprar para RPC de Polygon. Ninguna opción es universalmente mejor; se ajustan a diferentes etapas de una aplicación.
| Consideración | RPC compartido | Nodo dedicado |
|---|---|---|
| Esfuerzo de configuración | Conectar y listo | Aprovisionado para ti |
| Perfil de costo | Menor costo de entrada | Mayor, ligado a la capacidad |
| Riesgo de vecino ruidoso | Presente | Aislado a tu carga de trabajo |
| Manejo de ráfagas | Depende del nivel | Dimensionado a tu pico |
| Necesidades de archivo / trace | Varía según el proveedor | Configurable |
| Mejor para | Aplicaciones tempranas, tráfico ligero | Aplicaciones en producción con carga constante o con picos |
Un camino razonable es empezar en un endpoint compartido, vigilar tu latencia p95 y tasa de errores, y mover cargas de trabajo específicas — indexadores, guardianes, frontends de alto tráfico — a infraestructura dedicada cuando el nivel compartido se convierta en el cuello de botella. El servicio de API RPC de OnFinality y los nodos dedicados están diseñados para permitirte hacer ese movimiento sin cambiar el código de tu aplicación más allá de la URL del endpoint.
Agregar conmutación por error sin duplicar tu trabajo
Incluso un endpoint rápido puede tener un mal minuto. Un solo proveedor es un único punto de falla, por lo que las aplicaciones en producción suelen configurar un primario y un respaldo.
Con viem, puedes combinar transportes para que el cliente haga fallback automáticamente:
import { createPublicClient, http, fallback } from 'viem';
import { polygon } from 'viem/chains';
const client = createPublicClient({
chain: polygon,
transport: fallback([
http('https://polygon.api.onfinality.io/public'),
http('https://your-secondary-polygon-endpoint'),
]),
});
Ten en cuenta dos cosas. Primero, la conmutación por error protege la disponibilidad, no la latencia — un primario lento aún agrega retraso antes de que se active el respaldo, así que ajusta tus tiempos de espera. Segundo, si usas suscripciones WebSocket, asegúrate de que tu respaldo también las soporte, o tus escuchas de eventos se detendrán silenciosamente.
Señales de monitoreo que vale la pena alertar
Una vez que tienes un endpoint en producción, un pequeño conjunto de señales te dice si sigue siendo lo suficientemente rápido:
- Retraso en la altura de bloque — la brecha entre la cabeza de tu nodo y la cabeza de la red.
- Latencia p50 y p95 por método, no solo en general.
- Tasa de errores por método, especialmente para
eth_getLogsy envíos. - Eventos de reorganización o suscripción caída para clientes WebSocket.
- Respuestas de límite de tasa si estás en un nivel compartido.
Alerta sobre tendencias, no sobre picos individuales. Un breve aumento de latencia durante un bloque ocupado es normal; un aumento sostenido en p95 generalmente significa que has superado tu nivel actual.
Puntos clave
- "Más rápido" depende de tu carga de trabajo: latencia, rendimiento y consistencia son objetivos diferentes.
- Mide frente a tu propio tráfico y región, y observa p95 en lugar de promedios.
- Las llamadas pesadas como
eth_getLogsson la causa más común de lentitud percibida. - Empieza en un endpoint compartido; pasa a un nodo dedicado de Polygon cuando puedas nombrar el cuello de botella.
- Configura un endpoint de respaldo y asegúrate de que soporte WebSocket si dependes de suscripciones.
- Confirma el ID de cadena 137 y verifica la altura de bloque antes de confiar en cualquier endpoint.
Preguntas frecuentes
¿Un RPC público de Polygon es lo suficientemente rápido para producción?
Para cargas de trabajo ligeras como billeteras y dApps de bajo tráfico, un endpoint público o compartido suele ser suficiente. Para tráfico de producción constante o con picos, un nodo dedicado generalmente ofrece una latencia más consistente y menos sorpresas de límite de tasa.
¿Cómo pruebo la latencia de un RPC de Polygon?
Cronometra repetidamente una llamada ligera como eth_blockNumber desde tu propia infraestructura y observa la distribución. Luego reproduce una muestra de tus llamadas reales, incluidas las pesadas, para ver cómo se comporta el endpoint bajo tu mezcla real de solicitudes.
¿Qué ID de cadena usa Polygon?
Polygon mainnet usa el ID de cadena 137 con POL como moneda nativa. Polygon Amoy testnet usa el ID de cadena 80002.
¿Un RPC más rápido reduce el tiempo de confirmación de transacciones?
No directamente. El tiempo de confirmación depende de la red y del precio del gas. Un RPC más rápido reduce el tiempo que se tarda en enviar y observar una transacción, lo que mejora la capacidad de respuesta percibida de tu aplicación.
¿Cuándo debería pasar a un nodo dedicado de Polygon?
Cuando la latencia del nivel compartido, los límites de tasa o los efectos de vecino ruidoso empiecen a afectar a tus usuarios o a tu backend, y puedas señalar una métrica específica que un nodo dedicado mejoraría. Revisa precios de RPC y redes compatibles para planificar el cambio.