Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
GAMEPERF01-BP01 Evalúe los requisitos de recursos y las necesidades de escalabilidad del servidor de juegos
Evalúe los requisitos del servidor en función de sus necesidades de escalabilidad para comprobar que está seleccionando una opción de alojamiento que cumpla con sus requisitos y ofrezca un rendimiento óptimo.
Nivel de riesgo expuesto si no se establece esta práctica recomendada: alto
Guía para la implementación
Al seleccionar la opción de alojamiento adecuada para tus servidores de juegos, ten en cuenta los siguientes factores:
Requisitos de recursos del servidor de juegos
Evalúe los requisitos de CPU, memoria, red y almacenamiento de los procesos del servidor de juegos para determinar lo que consume el juego. No pases por alto las redes; cada fotograma requiere ciclos de CPU para recibir las acciones del jugador, actualizar el estado del juego y devolvérselo al jugador. Al descargar el procesamiento de paquetes, se puede liberar la CPU para utilizarla en las funciones principales del juego. La conexión en red es la base de un juego fluido y con capacidad de respuesta, por lo que probarlo al principio del proceso define un perfil de rendimiento básico para un juego.
Un juego de disparos en primera persona puede tener muchas acciones por segundo, lo que la CPU necesita para pasar rápidamente a la red, lo que puede favorecer las instancias de la familia C optimizadas para la computación, mientras que un juego de estrategia por turnos que puede dedicar más ciclos de CPU a procesar por turno puede necesitar más memoria de las instancias de la familia R para almacenar y actualizar localmente el estado del juego en el servidor antes de devolverlo a los jugadores. Utilice un enfoque basado en datos, como el método USE (Utilization Saturation and Errors)
Escalabilidad y elasticidad
Evalúe con qué rapidez y fluidez puede ampliarse cada opción de alojamiento para satisfacer la demanda de los jugadores sin comprometer el rendimiento. Ten en cuenta el nivel de automatización y flexibilidad necesarios para la carga de trabajo de tu juego a fin de mantener una experiencia de juego fluida durante las horas punta. Un servidor de juegos puede ampliarse rápidamente aumentando su utilización mediante la adición de procesos de servidor de juegos adicionales en la misma instancia, mientras que el backend de un juego puede escalar más lentamente en función del aumento del número de usuarios activos y de los juegos que se estén jugando. Tu flota debería ampliarse en función de la demanda para minimizar los costes y, al mismo tiempo, reducir al mínimo el tiempo de espera para que los jugadores accedan al juego. Consulte Amazon EC2 Spot Instance Advisor para obtener información sobre la rentable capacidad disponible para las flotas de servidores de juegos.
Pasos para la implementación
-
Evalúe los requisitos de recursos de CPU, memoria, red y almacenamiento del servidor de juegos para seleccionar los tipos de instancias adecuados, teniendo en cuenta las necesidades de rendimiento específicas del juego, como el alto rendimiento de la red para los juegos de FPS o la optimización de la memoria para los juegos de estrategia por turnos.
-
Compare diferentes opciones de alojamiento, como contenedores, instancias, servicios básicos y gestionados, analizando los datos de rendimiento mediante marcos como el método USE. Utilice estos conocimientos para tomar mejores decisiones sobre la arquitectura de su sistema.
-
Diseñe flotas para que sean escalables y elásticas, aprovechando herramientas como EC2 Spot Instance Advisor para optimizar los costes y, al mismo tiempo, facilitar el escalado rápido para satisfacer la demanda de los jugadores durante las horas punta.