한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Libro blanco del lag en juegos › L9 Proceso del juego en el servidor

Temporizadores que se disparan todos a la vez Synchronized timers

ID de la causa sp-timer-burst · Responsable principal Desarrollo de servidor (Equipo de desarrollo)

Abrir la ficha interactiva con gráficos y simulaciones →

Si la reaparición de todos los monstruos, el fin de todos los buffs y las recompensas a la hora en punto caen en el mismo tick, ese tick pesa decenas de veces más.

Por qué Los temporizadores de reaparición, expiración, recompensas y guardado automático coinciden a la misma hora → Efecto Ese tick tiene decenas de veces más trabajo que de costumbre → En pantalla Un tirón cada vez que llega la hora fijada

Síntomas
Congelamiento, Tirones
Factores
Detención
A quién afecta
Una zona o un canal, Todo el servidor
Cuándo
A intervalos regulares
Responsable
Responsable principal Desarrollo de servidor (Equipo de desarrollo)
Tareas (Equipo de desarrollo)
Desplazar un poco al azar la hora de los temporizadores, repartir el procesamiento entre varios ticks.
En el gráfico
Picos periódicos · Tiempo de tick del servidor
Dónde mirar
Intervalo entre los momentos de los picos de tick (a la hora en punto, cada 5 minutos, etc.), contrastado con la lista de temporizadores de reaparición, fin de buffs, recompensas y guardado automático que se ejecutan a esa hora
Se confirma si
El tick tiene picos siempre a la misma hora o con el mismo intervalo, y a esa hora se disparan de golpe tareas de temporizadores del juego
Se descarta si
Si hay periodicidad pero coincide con las pausas del log del GC o con la hora de los cron o las copias de seguridad del servidor, apunta a “Pausa stop-the-world del GC en el servidor” o a “Tareas programadas”
Se verifica con
Requiere logs y métricas del servidor o el cliente del juego

Fuentes

  1. Timeouts, retries, and backoff with jitter AWS
    Amazon Builders' Library. Añadir jitter a todos los temporizadores, tareas periódicas y tareas diferidas para dispersar la carga que coincide en el tiempo; caso de solicitudes con periodo de 1 minuto de muchos servidores que se concentraban en los primeros segundos de cada minuto

Ver también

Misma capa: L9 Proceso del juego en el servidor

Causas de otras capas con el mismo síntoma (Congelamiento)

Ver la ficha interactiva con gráficos y simulaciones