logo
Ejemplos

Prueba de estrés

Cómo diseñar una escena de prueba para medir objetos, RFC, sincronización, CPU y ancho de banda.

Prueba de estrés

Una prueba de estrés debe medir el sistema que realmente quieres desplegar. Eco permite observar tráfico, latencia y procesamiento, pero una prueba útil combina esas métricas con un workload controlado.

Qué medir

Red

Paquetes, bytes, ping y frecuencia de envío.

CPU

Tiempo dedicado a procesar paquetes y serializar datos.

Memoria

Objetos registrados, buffers y estado persistente.

Escala

Jugadores, objetos y canales simultáneos.

Escenario mínimo

10 clientes
  ×
100 objetos por cliente
  ×
10 actualizaciones/s
  ×
RFC ocasionales

No empieces con cientos de jugadores. Primero identifica el comportamiento de una sola variable y aumenta la carga de forma incremental.

Metodología

Línea base

Ejecuta el escenario sin tráfico adicional y registra CPU, memoria y latencia.

Añadir objetos

Incrementa la cantidad de entidades sin cambiar todavía la frecuencia de sincronización.

Añadir frecuencia

Aumenta las actualizaciones por segundo y observa cuándo empieza a crecer la cola de entrada.

Añadir jugadores

Repite el experimento con varias conexiones y canales.

Encontrar el cuello de botella

Comprueba si el límite aparece en CPU, serialización, ancho de banda, servidor o cliente.

Métricas de Eco

Debug.Log($"Ping: {Eco.Ping} ms");
Debug.Log($"Enviados: {Eco.PaquetesEnviados} / {Eco.BytesEnviados} bytes");
Debug.Log($"Recibidos: {Eco.PaquetesRecibidos} / {Eco.BytesRecibidos} bytes");

Qué no medir de forma aislada

Un ping bajo no garantiza un buen rendimiento. Una aplicación puede tener baja latencia y, aun así, saturar CPU o ancho de banda.

El objetivo es el workload real

Una simulación artificial de muchos paquetes pequeños puede ser peor o mejor que una partida real. Replica la distribución de RFC, sincronización, creación y destrucción de objetos que tendrá tu juego.

Diagnosticar una conexión

Workflow para obtener una primera fotografía del estado de red.

On this page