jMeter: plan de prueba del monitor
En este capítulo, discutiremos cómo crear un plan de prueba usando JMeter para monitorear servidores web. Los usos de las pruebas de monitor son los siguientes:
Los monitores son útiles para las pruebas de estrés y la gestión del sistema.
Utilizado con pruebas de estrés, el monitor proporciona información adicional sobre el rendimiento del servidor.
Los monitores facilitan la visualización de la relación entre el rendimiento del servidor y el tiempo de respuesta del lado del cliente.
Como herramienta de administración del sistema, el monitor proporciona una forma sencilla de supervisar varios servidores desde una consola.
Necesitamos Tomcat 5 o superior para monitorear. Para nuestro propósito de prueba, monitorearemos el servidor Tomcat 7.0.42. Puede probar cualquier contenedor de servlet que admita Java Management Extension (JMX). Escribamos un caso de prueba para monitorear el servidor Tomcat. Primero configuremos nuestro servidor Tomcat.
Configurar el servidor Tomcat
Comenzamos abriendo el estado del servicio Tomcat. Para hacer esto, edite el archivo de configuración para usuarios,<TOMCAT_HOME>/conf/tomcat-users.xml. Este archivo contiene una sección de usuarios de tomcat (comentada) como se muestra:
<tomcat-users>
<!--
<role rolename = "tomcat"/>
<role rolename = "role1"/>
<user username = "tomcat" password = "tomcat" roles = "tomcat"/>
<user username = "both" password = "tomcat" roles = "tomcat,role1"/>
<user username = "role1" password = "tomcat" roles = "role1"/>
-->
</tomcat-users>
Necesitamos cambiar esta sección para agregar los roles de administrador, administrador, administrador-gui y asignar el usuario "admin". El archivo revisado es el siguiente:
<tomcat-users>
<role rolename = "manager-gui"/>
<role rolename = "manager-script"/>
<role rolename = "manager-jmx"/>
<role rolename = "manager-status"/>
<user username = "admin" password = "admin" roles = "manager-gui,manager-script,manager-jmx,manager-status"/>
</tomcat-users>
Ahora inicie el servidor Tomcat <TOMCAT_HOME> /bin/startup.sh para Linux y <TOMCAT_HOME> /bin/startup.bat para Windows. Una vez iniciado, verifique que la supervisión de Tomcat funcione ingresando el siguiente enlace en su navegador:
http://localhost:8080/manager/status?XML=true
Aparece una ventana de autenticación en el navegador. Ingrese el nombre de usuario y la contraseña de tomcat asociados (en nuestro caso es admin). Luego, el navegador muestra el estado de ejecución de Tomcat como se muestra a continuación:
De la captura de pantalla anterior, podemos notar algunas cosas:
En la URL, tenga en cuenta que XML = true (tenga en cuenta la distinción entre mayúsculas y minúsculas) permite una visualización limpia del Tomcat supervisor necesario para el funcionamiento de JMeter.
También tenga en cuenta que hay dos conectores predeterminados. El conector AJP utilizado en general junto con el módulo frontal mod_jk Apache HTTPD y el conector HTTP que se utiliza comúnmente como conector para acceso directo a Tomcat a través del puerto 8080.
Escriba el plan de prueba de JMeter
Supervisemos el servidor Tomcat escribiendo un plan de prueba:
Cambiar el nombre del plan de prueba
Abra la ventana de JMeter haciendo clic en /home/manisha/apache-jmeter2.9/bin/jmeter.sh.
Haga clic en el nodo Plan de prueba.
Agregue un grupo de subprocesos como se explica en el siguiente paso.
Agregar grupo de subprocesos
Haga clic derecho en Test Plan → Add → Threads(Users) → Thread Group. El grupo de subprocesos se agregará en el nodo del plan de prueba.
Cambie el recuento de bucles a forever (o un número grande) para que se generen suficientes muestras.
Administrador de autorización HTTP
Agregue HTTP Authorization Manager al elemento Thread Group seleccionando Agregar → Elemento de configuración → HTTP Authorization Manager. Este elemento gestiona la autenticación solicitada por el navegador para ver el estado del servidor Tomcat.
Seleccione el Administrador de autorización HTTP.
Edite los siguientes detalles:
Username - admin (dependiendo de la configuración en el archivo tomcat-users.xml)
Password - admin (dependiendo de la configuración en el archivo tomcatusers.xml)
Los otros campos quedan vacíos.
Agregar solicitud Sampler-HTTP
Ahora que hemos definido a nuestros usuarios, es el momento de definir las tareas que realizarán. Agregamos el elemento Solicitud HTTP.
Haga clic derecho con el botón del mouse para obtener el menú Agregar.
Seleccione Agregar → Muestreador → Solicitud HTTP.
Luego, seleccione el elemento Solicitud HTTP en el árbol.
Edite las siguientes propiedades como en la imagen a continuación:
Los siguientes detalles se ingresan en este elemento:
Name - Estado del servidor
Server Name or IP - localhost
Port - 8080
Path - / gerente / estado
Parameters- Agregue un parámetro de solicitud llamado "XML" en mayúsculas. Dale un valor de "verdadero" en minúsculas.
Optional Tasks - Marque "Usar como monitor" en la parte inferior del muestreador.
Agregar un temporizador constante
Para solicitar el estado del servidor periódicamente, agregue un temporizador constante que permitirá un intervalo de tiempo entre cada solicitud. Agregue un temporizador a este grupo de hilos seleccionando Agregar → Temporizador → Temporizador constante.
Ingrese 5000 milisegundos en el cuadro Thread Delay . En general, usar intervalos de menos de 5 segundos puede agregar estrés a su servidor. Descubra cuál es un intervalo aceptable antes de implementar el monitor en su entorno de producción.
Agregar oyente
El último elemento que debe agregar a su plan de prueba es un oyente. Agregamos dos tipos de oyentes. Uno que almacena los resultados en un archivo y el segundo que muestra la vista gráfica de los resultados.
Seleccione el elemento del grupo de hilos.
Agregar un oyente de Escritor de datos simple Agregar → Oyente → Escritor de datos simple.
Especifique un directorio y nombre de archivo del archivo de salida (en nuestro caso, es /home/manisha/work/sample.csv)
Agreguemos otro oyente seleccionando el elemento del plan de prueba Agregar → Oyente → Resultados del monitor.
Ejecutar el plan de prueba
Ahora guarde el plan de prueba anterior como monitor_test.jmx . Ejecute este plan de prueba usando la opción Ejecutar → Iniciar.
Ver la salida
Los resultados se guardarán en el archivo /home/manisha/work/sample.csv. También puede ver un resultado gráfico en el detector de resultados de Monitor como en la imagen a continuación.
Tenga en cuenta que el gráfico tiene leyendas en ambos lados del gráfico. A la izquierda está el porcentaje y la derecha está muerta / sana. Si la línea de la memoria sube y baja rápidamente, podría indicar una pérdida de memoria. En esas situaciones, es una buena idea perfilar la aplicación con Borland OptimizeIt o JProbe. Lo que desea ver es un patrón regular de carga, memoria e hilos. Cualquier comportamiento errático suele indicar un rendimiento deficiente o un error de algún tipo.