La compresión de logs, las copias de seguridad y los análisis de seguridad que se ejecutan todos los días a la misma hora ocupan la CPU y el disco.
Por qué Una tarea del SO se ejecuta a una hora fijada → Efecto Comparte la CPU y el disco con el servidor del juego → En pantalla Tirones y cámara lenta a una hora fija, por ejemplo todos los días a las 4 de la madrugada
Responsable principal Infraestructura de servidores (Equipo de infraestructura)
Tareas (Equipo de infraestructura)
Repartir las horas de las tareas, bajarles la prioridad (nice, ionice), separarlas del servidor del juego (ejecutarlas en otro servidor).
En el gráfico
Picos periódicos · Uso de CPU, cola del disco, tiempo de tick del servidor
Dónde mirar
Horas de ejecución de las tareas programadas con crontab y systemctl list-timers; en los picos de tick, qué procesos usan CPU y disco con pidstat -u -d
Se confirma si
El tick tiene picos todos los días (o cada hora) a la misma hora, y en ese momento el proceso de una tarea programada ocupa la CPU y el disco
Se descarta si
Si los picos no coinciden con una hora fija diaria, no es esta causa. Si se repiten cada pocos segundos o minutos: “Pausa stop-the-world del GC en el servidor”, “Temporizadores que se disparan todos a la vez”
Se verifica con
Con herramientas de infraestructura (no hace falta código del juego)
Fuentes
ionice(1) — Linux manual pageutil-linux Las tareas de la clase idle solo reciben E/S cuando ningún otro programa usa el disco
systemd.timer(5) — Linux manual pagesystemd RandomizedDelaySec retrasa al azar la hora de las tareas programadas para evitar que la carga se concentre