FASE 5: Diseño de los experimentos
Esta fase consiste en decidir cuáles son las métricas que se van a someter a estudio. Una vez decididas éstas, se va a determinar qué monitores son los mejores para medirlas.
El objetivo es modificar los parámetros del sistema para ver cómo varían estas métricas dependiendo, por ejemplo, del ratio de llegadas de los clientes.
Las métricas que hemos elegido para someter a estudio son la utilización de la CPU, para observar el funcionamiento de un dispositivo particular del sistema, y el tiempo de respuesta así como el estado de la red. El tiempo de respuesta es interesante ya que es el tiempo real en que un usuario está delante del ordenador esperando el resultado de la petición que ha hecho.
Ya que nuestro sistema funciona sobre windows, para monitorizar la CPU haremos uso del Administrador de Tareas que ofrece el propio sistema operativo. En él aparece el rendimiento que está dando este dispositivo. Además, para no contaminar las muestras, se puede analizar el rendimiento de un programa en concreto, aislándolo de los demás, para que no interfieran en el análisis y los resultados se acerquen lo más posible a lo real.
Como podemos observar en la imagen, seleccionamos el proceso que queremos medir, en este caso será nuestro servidor, y obtenemos las medidas correspondientes.
Además podemos usar como herramienta adicional el monitor de rendimiento de windows. La aplicación se llama perfmon y la ejecutamos desde la consola. Con este programa se generan logs durante el tiempo de la simulación para luego obtener los datos.
Para medir el tiempo de respuesta del sistema entero, lo haremos manualmente desde el simulador que hemos desarrollado. Se registrarán el tiempo en que se lanza cada una de las peticiones y el instante en que se recibe el resultado y haremos la media de todas ellas.
Hemos escogido esta forma de calcular el tiempo de respuesta del sistema ya que lo podemos obtener de una forma sencilla con el programa que hemos realizado.
Para estudiar el estado de la red, comprobaremos el número de conexiones TCP concurrentes en el servidor. Para obtener datos de la carga que se le puede someter al servidor.
Con toda esta información, y variando parámetros del sistema, como el tiempo entre llegadas de usuarios al sistema, llevaremos a cabo la siguiente fase de la práctica, que consiste en analizar los resultados de este estudio.
El simulador se ha modificado ligeramente para obtener el cálculo del tiempo medio de respuesta del sistema. Por cada petición que un cliente hace al servidor, se crea un hilo que la realiza. En este hilo obtendremos el tiempo de inicio cuando se lanza la petición y el tiempo final cuando ha acabado, así podremos obtener el tiempo de respuesta de una petición. Luego haremos la media de todas ellas y obtendremos una idea general del tiempo de respuesta del sistema.