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

Libro blanco del lag en juegos › L13 Arquitectura y operación de servidores

Caída de un servidor auxiliar Auxiliary service outage

ID de la causa in-subservice · Responsable principal Desarrollo de servidor (Equipo de desarrollo) · También Infraestructura de servidores (Equipo de infraestructura)

Abrir la ficha interactiva con gráficos y simulaciones →

Si falla un servidor que funciona aparte del servidor del juego, como el del chat, los grupos o la casa de subastas, solo deja de funcionar esa función.

Por qué El servidor dedicado a una función se vuelve lento o se cae → Efecto Solo las solicitudes de esa función se quedan sin respuesta → En pantalla El chat no funciona, las invitaciones de grupo no responden, el mercado se queda en carga infinita (el combate va normal)

Síntomas
Acción perdida / rollback, No conecta / carga infinita
Factores
Detención, Pérdida de paquetes
A quién afecta
Solo una función
Cuándo
De vez en cuando, al azar, Cuando se junta mucha gente
Responsable
Responsable principal Desarrollo de servidor (Equipo de desarrollo) · También Infraestructura de servidores (Equipo de infraestructura)
Tareas (Equipo de desarrollo)
Diseñar para que el juego continúe aunque la función falle, mostrar el estado de cada función, no concentrar varias funciones en un solo servidor central.
Tareas (Equipo de infraestructura)
Health checks y alertas para cada servidor auxiliar, redundancia y reinicio automático.
En el gráfico
Desconexión masiva · Tasa de éxito de las solicitudes por función, conexiones y health checks de los servidores auxiliares
Dónde mirar
Health checks, estado del proceso y conexiones de cada servidor auxiliar (chat, grupos, casa de subastas, etc.), tasa de éxito y tiempo de respuesta de las solicitudes por función. Detrás de un balanceador de carga, UnHealthyHostCount del grupo de destino
Se confirma si
Solo el servidor de la función reportada falla los health checks o pierde conexiones de golpe, mientras los ticks y el combate del servidor del juego van normales
Se descarta si
Si se detuvieron varias funciones a la vez, apunta al servidor central que hace de intermediario para todas ellas o a “Fallo en cascada”
Se verifica con
Con herramientas de infraestructura (no hace falta código del juego)
Para saber más
Si un único servidor central (servidor de mundo o servidor gestor) hace de intermediario para grupos, gremios, mensajes privados y traslados entre servidores, cuando ese servidor se vuelve lento se detienen varias funciones a la vez.

Fuentes

  1. Bulkhead Pattern Microsoft Azure
    Si se aíslan los componentes en pools, aunque uno falle los demás siguen funcionando y el fallo no se extiende
  2. REL05-BP01 Implement graceful degradation to transform applicable hard dependencies into soft dependencies AWS
    AWS Well-Architected. Diseñar para que, aunque falle una dependencia, las funciones esenciales sigan funcionando con datos algo antiguos o alternativos
  3. CloudWatch metrics for your Network Load Balancer AWS
    UnHealthyHostCount: número de destinos que el health check da por no sanos

Ver también

Misma capa: L13 Arquitectura y operación de servidores

Causas de otras capas con el mismo síntoma (Acción perdida / rollback)

Ver la ficha interactiva con gráficos y simulaciones