Logo
RPC Assistant

¿Cómo configuro un RPC personalizado para Optimism?

Resumen

Configurar un RPC personalizado para Optimism significa configurar tu wallet o dApp para usar un endpoint específico en lugar del público predeterminado. Esta guía cubre los ajustes de red que necesitas, cómo agregar Optimism a MetaMask y cómo elegir un proveedor de RPC confiable para uso en producción.

Recomendación rápida: cuándo usar un RPC personalizado para Optimism

Si estás leyendo esto, es probable que hayas alcanzado el límite de tasa del endpoint público de Optimism o necesites soporte de WebSocket para datos en tiempo real. Un RPC personalizado te brinda un endpoint dedicado que controlas, lo cual es esencial para dApps de producción, bots de trading o cualquier aplicación que dependa de un acceso constante a OP Mainnet.

Para la mayoría de los desarrolladores, la decisión se reduce a tres escenarios:

  • Solo estás probando o construyendo un proyecto pequeño: El endpoint público https://mainnet.optimism.io es suficiente para desarrollo, pero tiene límite de tasa y no admite WebSockets.
  • Estás implementando una aplicación de producción: Necesitas un proveedor de RPC confiable y escalable. OnFinality ofrece un endpoint RPC administrado de Optimism que puedes usar con una simple clave de API.
  • Necesitas suscripciones WebSocket: Para escuchar eventos en tiempo real, necesitarás un proveedor que admita WSS. El endpoint de Optimism de OnFinality admite tanto HTTP como WebSocket.

Si no estás seguro de qué camino tomar, comienza con un plan gratuito de un proveedor como OnFinality y monitorea tu uso. Siempre puedes actualizar a un nodo dedicado más adelante si tus necesidades crecen.

Ajustes de red de Optimism de un vistazo

Antes de poder conectarte a Optimism, necesitas los parámetros de red correctos. Aquí tienes una tabla de referencia rápida para OP Mainnet y OP Sepolia:

ParámetroOP MainnetOP Sepolia
Nombre de redOP MainnetOP Sepolia
Chain ID1011155420
Símbolo de monedaETHETH
Explorador de bloqueshttps://optimistic.etherscan.iohttps://sepolia-optimism.etherscan.io
URL RPC públicahttps://mainnet.optimism.iohttps://sepolia.optimism.io
RPC público de OnFinalityhttps://optimism.api.onfinality.io/publichttps://optimism-sepolia.api.onfinality.io/public

Estos ajustes son los que necesitarás para agregar Optimism a MetaMask o configurar tu dApp. Los endpoints públicos de OnFinality tienen límite de tasa, pero ofrecen una alternativa más confiable que los públicos oficiales, y admiten tanto HTTP como WebSocket.

Cómo agregar Optimism a MetaMask con un RPC personalizado

Agregar Optimism a MetaMask es un primer paso común. Aquí te mostramos cómo hacerlo manualmente:

  1. Abre MetaMask y haz clic en el menú desplegable de redes en la parte superior.
  2. Haz clic en Agregar red.
  3. En la parte inferior, haz clic en Agregar una red manualmente.
  4. Completa los siguientes detalles:
    • Nombre de red: OP Mainnet
    • Nueva URL RPC: https://optimism.api.onfinality.io/public
    • Chain ID: 10
    • Símbolo de moneda: ETH
    • URL del explorador de bloques: https://optimistic.etherscan.io
  5. Haz clic en Guardar.

Ahora puedes cambiar a OP Mainnet e interactuar con la red. Para OP Sepolia, usa los ajustes correspondientes de la tabla anterior.

Conexión a Optimism con ethers.js y viem

Una vez que tengas tu URL RPC, puedes conectarte a Optimism usando bibliotecas populares de JavaScript. Aquí tienes un ejemplo con ethers.js:

const { ethers } = require("ethers");

const provider = new ethers.JsonRpcProvider("https://optimism.api.onfinality.io/public");

async function getBlockNumber() {
  const blockNumber = await provider.getBlockNumber();
  console.log("Número de bloque actual:", blockNumber);
}

getBlockNumber();

Y con viem:

import { createPublicClient, http } from 'viem';
import { optimism } from 'viem/chains';

const client = createPublicClient({
  chain: optimism,
  transport: http('https://optimism.api.onfinality.io/public')
});

const blockNumber = await client.getBlockNumber();
console.log(blockNumber);

Para suscripciones WebSocket, puedes usar el endpoint WSS. El endpoint público de OnFinality admite WebSocket, por lo que puedes hacer:

const provider = new ethers.WebSocketProvider("wss://optimism.api.onfinality.io/public");

provider.on("block", (blockNumber) => {
  console.log("Nuevo bloque:", blockNumber);
});

Probando tu endpoint RPC con curl

Antes de integrar, puedes probar tu endpoint con un simple comando curl. Así es como verificar el número de bloque actual:

curl https://optimism.api.onfinality.io/public \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

Deberías recibir una respuesta como:

{"jsonrpc":"2.0","result":"0x10d4f","id":1}

El resultado es un número de bloque codificado en hexadecimal. Esto confirma que tu endpoint está funcionando.

Modos de fallo comunes y cómo depurarlos

Incluso con un RPC personalizado, puedes encontrar problemas. Aquí hay algunos problemas comunes y cómo solucionarlos:

  • Límite de tasa: Si recibes errores 429, tus solicitudes están siendo limitadas. Esto es común en endpoints públicos. Solución: usa un proveedor con límites de tasa más altos, como los planes de pago de OnFinality.
  • Caídas de conexión WebSocket: Si tu conexión WebSocket es inestable, verifica tu red y asegúrate de usar la URL WSS correcta. Algunos proveedores no admiten WebSockets en planes gratuitos.
  • Desajuste de Chain ID: Si tus transacciones fallan con un error sobre el chain ID, asegúrate de que tu wallet o dApp esté configurada con el chain ID correcto (10 para OP Mainnet).
  • Nodo desincronizado: Si ejecutas tu propio nodo, puede estar detrás de la punta de la cadena. Esto puede causar lecturas obsoletas. Considera usar un proveedor administrado para evitar esto.

Cómo elegir un proveedor de RPC de Optimism

Al evaluar proveedores de RPC para Optimism, considera los siguientes criterios:

CriterioQué verificarPor qué importa
Tiempo de actividadEstadísticas históricas de tiempo de actividadEl tiempo de inactividad significa que tu aplicación no está disponible
Límites de tasaSolicitudes por segundo (RPS) permitidasLas aplicaciones de alto tráfico necesitan límites más altos
Soporte WebSocketDisponibilidad del endpoint WSSNecesario para funciones en tiempo real
Datos de archivoAcceso al estado históricoRequerido para ciertos análisis y depuración
PreciosPlan gratuito y planes de pagoDebe ajustarse a tu presupuesto y escala
SoporteSLA y tiempos de respuestaCrítico para problemas de producción

OnFinality ofrece un servicio RPC administrado de Optimism con soporte HTTP y WebSocket, y puedes comenzar con un plan gratuito. Para cargas de trabajo de producción, puedes escalar a nodos dedicados para un rendimiento más predecible. Consulta nuestros precios de RPC para más detalles.

Lista de verificación de preparación para producción

Antes de lanzar tu dApp de Optimism, revisa esta lista:

  • Usa un proveedor de RPC confiable (no el endpoint público)
  • Configura endpoints de respaldo en caso de una interrupción del proveedor
  • Monitorea tu uso de RPC y configura alertas para los umbrales de límite de tasa
  • Prueba las suscripciones WebSocket si dependes de datos en tiempo real
  • Verifica el chain ID y los ajustes de red en tu wallet y dApp
  • Asegúrate de que tu proveedor admita los métodos que necesitas (por ejemplo, eth_getLogs para indexación de eventos)

Conclusiones clave

  • Un RPC personalizado para Optimism te da control sobre los límites de tasa, el soporte WebSocket y la confiabilidad.
  • Los ajustes de red para OP Mainnet son chain ID 10, símbolo ETH y explorador https://optimistic.etherscan.io.
  • Puedes usar el endpoint público de OnFinality para desarrollo, pero para producción, considera un plan de pago o un nodo dedicado.
  • Siempre prueba tu endpoint con curl o un script simple antes de integrarlo.
  • Elige un proveedor según el tiempo de actividad, los límites de tasa, el soporte WebSocket y los precios.

Preguntas frecuentes

¿Qué es un RPC personalizado? Un RPC personalizado es un endpoint específico que configuras en tu wallet o dApp para conectarte a una red blockchain. En lugar de usar el endpoint público predeterminado, puedes usar un endpoint de un proveedor que ofrezca mejor rendimiento y confiabilidad.

¿Por qué necesito un RPC personalizado para Optimism? El endpoint público de Optimism tiene límite de tasa y no admite WebSockets. Un RPC personalizado de un proveedor como OnFinality te brinda límites más altos, soporte WebSocket y un tiempo de actividad más consistente.

¿Cómo agrego Optimism a MetaMask? Ve a MetaMask > Agregar red > Agregar una red manualmente, luego ingresa el nombre de la red, la URL RPC, el chain ID, el símbolo y la URL del explorador. Puedes usar los ajustes de la tabla anterior.

¿Puedo usar un RPC personalizado de forma gratuita? Sí, muchos proveedores ofrecen planes gratuitos. OnFinality tiene un endpoint público gratuito, pero para uso en producción, probablemente necesitarás un plan de pago para obtener límites de tasa más altos y soporte.

¿Cuál es la diferencia entre RPC HTTP y WebSocket? HTTP es para interacciones de solicitud-respuesta, como obtener saldos o enviar transacciones. WebSocket mantiene una conexión persistente para actualizaciones en tiempo real, como notificaciones de nuevos bloques o registros de eventos.

¿Cómo pruebo mi endpoint RPC de Optimism? Usa curl para enviar una solicitud JSON-RPC como eth_blockNumber. Si obtienes una respuesta válida, tu endpoint está funcionando.

¿Qué debo hacer si me limitan la tasa? Actualiza a un plan con límites de tasa más altos, o usa múltiples endpoints con conmutación por error. Los planes de pago de OnFinality ofrecen RPS más altos y nodos dedicados para cargas de trabajo exigentes.

¿OnFinality admite Optimism Sepolia? Sí, OnFinality proporciona un endpoint público para Optimism Sepolia: https://optimism-sepolia.api.onfinality.io/public. Puedes encontrar más detalles en nuestra página de red de Optimism.

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