> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solanatracker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Gestionar reconexiones y carga en Yellowstone gRPC

> Planifica reconexiones, recuperación de huecos, colas limitadas y monitorización de consumidores gRPC.

Un consumidor continuo necesita un plan de recuperación además de una conexión rápida. Mide recepción, procesamiento y retraso antes de cambiar concurrencia o configuración.

## Limita los datos que procesas

Filtra por dirección o programa antes de decodificar. Usa metadatos si solo necesitas hashes y contadores. Aplica slices solo cuando el decoder los espere. Agrupa suscripciones con poco tráfico y separa programas de alto volumen cuando las métricas lo justifiquen.

## Limita trabajo y memoria

Esperar a un handler limita la concurrencia, pero no paraleliza trabajo de CPU. Usa colas limitadas y workers para parsing costoso. Define qué hacer al llenarse: pausar, muestrear métricas descartables o detenerse y recuperar datos persistentes.

## Reconecta con un límite de reintentos

Guarda el [helper del inicio rápido](/es/yellowstone-grpc/quickstart) como `stream.mts` en el mismo directorio. Los ejemplos usan las mismas variables y dependencias.
Este ejemplo reintenta con espera exponencial y jitter y termina tras ocho interrupciones. Corrige fallos de autenticación antes de reiniciar.

```typescript reconnect.mts theme={null}
import { setTimeout as delay } from "node:timers/promises";
import { subscribe } from "./stream.mts";

let retry = 0;
while (retry < 8) {
  try {
    for await (const update of subscribe({ blocksMeta: { blocks: {} } })) {
      if (update.blockMeta) console.log(update.blockMeta.slot);
    }
    console.error("Stream ended");
  } catch (error) {
    console.error("Stream failed", error);
  }
  retry += 1;
  const waitMs = Math.min(30_000, 500 * 2 ** retry) + Math.random() * 500;
  await delay(waitMs);
}
throw new Error("Reconnect budget exhausted");
```

## Recupera los huecos de forma explícita

Guarda el progreso tras completar la escritura de destino. Reconecta con la suscripción completa y recupera el rango con historial RPC o un snapshot. Usa replay solo si el endpoint confirma soporte y retención; deduplica lo recuperado.

## Ajusta según las métricas

* Compara EU y US desde el host real; un ping ICMP no mide la latencia del stream.
* Si un mensaje supera el límite, reduce el contenido antes de aumentarlo. Usa las opciones de tu versión y calcula el coste de memoria.
* Responde a pings. Keepalive del transporte y ping de suscripción son mecanismos distintos.
* Alerta ante desconexiones repetidas, errores de decoding, colas crecientes, progreso detenido y fallos de escritura.
* Prueba interrupción y recuperación con la base de datos de destino.

## Guías relacionadas

<CardGroup cols={2}>
  <Card title="Autenticación" href="/es/yellowstone-grpc/authentication" />

  <Card title="Inicio rápido" href="/es/yellowstone-grpc/quickstart" />
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.