Bots de Discord

Sharding: qué es y cuándo te obligan a hacerlo

Revisado el 6 de septiembre de 2026 2 min de lectura

Un shard es una conexión a Discord que se encarga de una porción de tus servidores. Por debajo de cierto tamaño necesitas exactamente uno y no deberías pensar en esto en absoluto; pasado ese punto, Discord te obliga a dividir, y unas cuantas cosas de tu bot tienen que cambiar.

El umbral

Discord exige que un bot use sharding en cuanto está en 2.500 servidores o más. Es un requisito duro y no una sugerencia: sin él la conexión se rechaza. Por debajo de ese número, un solo shard es lo correcto y añadir más solo añade complejidad.

Qué cambia al hacer sharding

CosaAntesDespués
Conexiones a DiscordUnaUna por shard
MemoriaUn procesoNormalmente un proceso por shard, o un gestor que los lanza
Obtener un servidor por idInmediatoPuede vivir en otro shard
Contar usuarios totalesUna propiedadUna consulta a todos los shards que tienes que agregar
ReiniciarUn procesoPor tandas, si quieres evitar una caída completa
Las operaciones entre shards son la parte que rompe el código existente

Todo lo que daba por hecho que tu bot podía ver todos los servidores a la vez deja de ser cierto. Un comando /stats que cuenta servidores, un anuncio global, una búsqueda por id de usuario: todo eso necesita preguntarle a cada shard y combinar las respuestas. Ese es el trabajo real de migración, y merece la pena escribir esos comandos a la defensiva mucho antes de llegar al umbral.

Si te estás acercando

  1. Usa el gestor de shards de tu librería

    Las dos librerías principales tienen uno. Escribir tu propia orquestación de procesos es un problema resuelto que no necesitas volver a resolver.

  2. Audita todo lo que itere sobre todos los servidores

    Esos son tus fallos futuros. Encuéntralos mientras el bot sigue siendo lo bastante pequeño como para que funcionen de casualidad.

  3. Planifica memoria por shard, no en total

    Cada shard guarda su propia caché. El sharding no reduce el uso de memoria: lo reparte, y muchas veces aumenta el total.

  4. Prueba con dos shards mucho antes de necesitar muchos

    Forzar dos shards en local saca a la luz cada suposición entre shards al momento, sin tráfico y sin riesgo.

Si no andas cerca de 2.500 servidores, esto no es tu problema

Los bots van lentos o se quedan sin memoria por motivos corrientes: una fuga, un bucle caro, demasiada caché. Hacer sharding en un bot pequeño para arreglar el rendimiento añade piezas y no arregla nada, porque el cuello de botella nunca fue el número de conexiones.