
Hibernación de Servidor: Ahorra CPU Cuando Nadie Juega
"Inicia y detiene minecraft-server cuando los jugadores se unen/se van"
gekware/minecraft-server-hibernation · github.com
Ejecutar un servidor Minecraft 24/7 es desperdiciar recursos. Ya sea que estés alojando para un grupo de amigos o una pequeña comunidad de mods, tu servidor consume CPU y electricidad tanto si alguien está en línea como si no. Hibernación de Servidor Minecraft (MSH) resuelve esto iniciando automáticamente tu servidor cuando un jugador se une y apagándolo cuando la última persona se va. Es una idea simple que ahorra dinero y recursos reales.
Qué Hace Este Proyecto
Hibernación de Servidor Minecraft es un proxy ligero escrito en Go que se sitúa entre tus jugadores y tu servidor real. Cuando alguien intenta conectarse, MSH los detecta, inicia tu servidor real en segundo plano y reenvía su conexión. Una vez que todos se van y expira un período de tiempo de espera (configurable), MSH detiene el servidor y vuelve a dormir.
No necesitas cambiar cómo te conectas a tu servidor. Los jugadores simplemente se unen normalmente, excepto que ahora el servidor se inicia mágicamente cuando llegan.
El proyecto registra cuánto tiempo ha puesto servidores en hibernación entre todos los usuarios: más de mil años acumulados de tiempo de CPU ahorrado desde 2019. Eso no es poco.
Por Qué Lo Usarías
La mayoría de las personas que ejecutan servidores caen en algunos grupos. Tienes grupos de amigos casuales que juegan esporádicamente, quizás unas pocas horas a la semana. Tienes pequeñas comunidades de mods con 10-20 jugadores activos que se conectan en ciertos momentos. Tienes personas que quieren juguetear con un servidor pero no quieren pagar por hosting 24/7. Para cualquiera de estas situaciones, pagar por un servidor que está inactivo 16 horas al día es simplemente dinero tirado a la basura.
El beneficio secundario es la conveniencia real. No más iniciar manualmente tu servidor antes de que tus amigos se conecten, ni correr cuando alguien dice "vamos a jugar esta noche". Se unen, el servidor se inicia, estás en un juego en 15 segundos. Se apaga automáticamente cuando el último jugador se va.
¿Y si tienes un servidor modded con una lista de mods pesada? Eliminar 8 horas de tiempo de servidor inactivo por día se suma a ahorros reales de energía, especialmente si estás ejecutando esto en hardware en tu casa en lugar de una máquina alquilada.
Cómo Ejecutarlo
La configuración es sencilla una vez que entiendes las piezas. Vas a descargar el ejecutable MSH para tu SO (Linux, Windows o macOS), crear un archivo de configuración, apuntarlo a tu servidor Minecraft existente y ejecutarlo.

Primero, descarga la última versión de GitHub:
cd /home/user/minecraft-server-hibernation
wget https://github.com/gekware/minecraft-server-hibernation/releases/download/v2.5.1/msh-v2.5.1-fd9f22d-linux-amd64.bin
chmod +x msh-v2.5.1-fd9f22d-linux-amd64.binTambién necesitarás descargar el archivo de configuración de ejemplo de la página de lanzamientos y editarlo. La configuración importante:
- Folder - ruta a tu directorio de servidor (donde vive server.jar)
- FileName - el nombre del archivo jar del servidor actual
- StartServerParam - argumentos de lanzamiento (generalmente algo como "-Xmx4G -Xms4G -jar server.jar nogui")
- StopServer - cómo apagar gracefully el servidor (comandos de teclado como "save-all" y "stop")
- TimeBeforeStoppingEmptyServer - cuánto tiempo esperar después de que el último jugador se vaya antes de detener el servidor (en segundos)
El reenvío de puertos viene a continuación. En tu router, reenvía el puerto 25555 (o el puerto que hayas establecido en la configuración) a tu máquina servidora. Luego abre ese puerto en el cortafuegos de tu servidor.
Si estás en Linux con UFW:
sudo ufw allow 25555/tcpColoca el ejecutable en tu carpeta de servidor, ejecútalo, y ya está.
./msh-v2.5.1-fd9f22d-linux-amd64.binLos jugadores se conectan usando tu puerto de servidor real (25555 por defecto), y MSH maneja todo detrás de escenas.
Características Clave Que Importan
La herramienta tiene algunos detalles bien pensados más allá de simplemente "iniciar y detener".
Icono de Servidor Personalizado - Puedes colocar un icono de servidor congelado (imagen llamada `server-icon-frozen`) en tu carpeta de servidor, y MSH lo mostrará a los jugadores mientras el servidor real se está despertando. Se ve más limpio que un estado genérico sin conexión.
Soporte de Lista Blanca - Puedes configurar una lista blanca directamente en MSH, o respetará la lista blanca existente de tu servidor. Controla quién puede incluso despertar el servidor.
El apagado elegante está integrado. MSH no simplemente mata el proceso. Envía comandos de parada adecuados y espera a que el servidor guarde y se cierre limpiamente, para que no corrompas tu mundo.
Tiempo de Espera de Inactividad Configurable - ¿Quieres que tu servidor permanezca activo durante 5 minutos después de que se vaya el último jugador, o 30 minutos? Tú lo controlas. Da a los jugadores tiempo para regresar sin que el servidor muera en el momento en que se desconecten.
Multiplataforma - Funciona en Linux, Windows y macOS, y es compatible con servidores vanilla y con mods pesados. El proyecto existe desde 2019 y se mantiene activamente (el último lanzamiento fue v2.5.1 con mejoras en el manejo de fallos y compilación de Go actualizada).
Trampa y Cosas a Saber
Primero: el archivo de configuración no se genera automáticamente. Tienes que descargarlo de la página de lanzamientos o crearlo tú mismo. Sin magia aquí.

Segundo, server.properties necesita una configuración: `server-ip=0.0.0.0`. Si está establecido en una IP específica, MSH no puede alcanzar tu servidor correctamente y obtendrás errores de conexión. Es fácil pasarlo por alto e incómodo de depurar.
Los inicios en frío toman unos segundos. Cuando un jugador se conecta, hay un retraso mientras el servidor se inicia y carga chunks. Para la mayoría de los grupos esto está bien ("el servidor se está iniciando, dame un segundo"). Para speedrunners o juego hipercompetitivo, podría importar.
Asegúrate de haber reenviado puertos correctamente. MSH escucha en tu puerto especificado pero necesita ser accesible desde fuera de tu red. Si los amigos no pueden conectarse, 9 de cada 10 veces es un problema de reenvío de puertos, no de MSH.
Una cosa más: si reinicia tu máquina anfitriona, asegúrate de que MSH se inicie automáticamente al arrancar. Ejecútalo como un servicio systemd en Linux o una tarea programada en Windows para que no tengas que iniciarlo manualmente cada vez.
¿Qué Hay Sobre Alternativas
Hay algunas otras herramientas en este espacio. Los contenedores Docker con algo de scripting pueden hacer cosas similares, pero son más complejos de configurar. Algunos proveedores de hosting ofrecen características de auto-inicio integradas, pero estás bloqueado a su infraestructura y generalmente pagando extra.
También está la opción nuclear: configurar un trabajo cron que verifique si tu servidor se está ejecutando e inicia/detiene basándose en la cantidad de jugadores. En serio, funciona, pero estás manteniendo scripts de shell en lugar de usar una herramienta diseñada para este trabajo específico.
La ventaja de MSH es que es un único binario que se ha refinado durante más de 6 años. No está pensando demasiado en el problema, y funciona sin conexión (sin dependencia de la nube ni servicios externos).
Si estás construyendo un servidor para ti o para un pequeño grupo y te importa la eficiencia, vale la pena los 20 minutos para configurarlo.
¿Buscas más herramientas para mejorar tu servidor? Consulta la Lista de Servidores Minecraft para inspiración sobre qué están ejecutando otras comunidades, o usa herramientas útiles como la Calculadora del Portal del Nether y Generador de Texto Minecraft para tu juego.
Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.
Preguntas Frecuentes
¿Cómo funciona la Hibernación de Servidor Minecraft?
¿Necesito cambiar la forma en que me conecto al servidor con MSH?
¿Cuánto tiempo de CPU ha ahorrado MSH según el proyecto?
¿Qué pasa con el estado del servidor cuando se inicia y detiene?
¿MSH soporta servidores con mods?
Comentarios
Aún no hay comentarios. ¡Sé el primero en compartir tu opinión!


