Entradas

Mostrando entradas de mayo, 2016

Cómo parametriza un .jmx demasiado largo

Imagen
El tamaño de los flujos de prueba no siempre es breve, lo que dificulta su correcta transformación en scripts de JMeter. No solo por el hecho de ser extensos, sino también por las necesidades que acarrea al momento de parametrizar.
Como he mencionado en algunas entradas anteriores, algunas veces es necesario parametrizar casi por completo el script de JMeter. Es el caso si la aplicación tiene componentes de Seam.
El ocio, como bien dice Jason Cannon, es la madre de la automatización y el uso de rutinas para las tareas repetitivas. A continuación vamos a hacer vía bash con la cual podemos sustituir los parámetros cid y viewstate en los .jmx de JMeter, hecho que nos facilitará la vida de manera sustanciosa, inclusive, evitando posibles errores de dedo que no hacen otra cosa que fastidiarnos las pocas horas que debemos dedicar a labores de preparación de los scripts.
GNU/Linux está dotado de herramientas muy poderosas para el manejo de archivos de texto, como Perl, AWK, SED, entre otra…

Extracción del cid y viewstate con Jmeter

Imagen
A veces la vida de las personas que hacemos pruebas de rendimiento es complicada, en especial, cuando nos encontramos frente a un framework de desarrollo poco amigable en términos de comprensibilidad en la conformación de las peticiones http.
La aplicación hacía muchas redirecciones, peticiones ajax, llenado de campos en automático, uso de tablas, etc.
Seam construye de una manera particular las vistas, para ello se apoya en dos variables: cid y viewstates. Los valores de éstos son únicos y por lo tanto, el software de estrés debe ser capaz de reescribir esta variable...pero sí no lo hace, hay que realizar unos cuantos pasos adicionales.
Yo uso Jmeter, así que sólo será válido mi procedimiento para este software. Lo primero que debemos hacer es agregar a cada página .seam dos post-processor: Regular Expression Extractor. Uno para cid y otro para el viewstate.
A continuación se muestra el cómo deben configurarse los extractores. El nombre por el cual lo ubicaremos, la expresión regula…

Detección de problemas en aplicaciones Java (hilos)

Imagen
En este post abordaré cómo identificar los problemas relacionados con hilos y CPU. Para este tipo de análisis es importante conocer el patrón de comportamiento de la aplicación, así evitaremos los falsos positivos. Recomiendo observar en tiempo real, una vez que detectemos los elevados consumos de CPU.
En las plataformas GNU/Linux es posible mirar el tiempo de CPU que cada proceso, basta con utilizar top con algunas opciones de orden por CPU.
Síntomas
Consumo elevado de CPU durante mucho tiempo.La cola de ejecución de procesos del CPU nunca llega a 0.
Sabemos que en las aplicaciones OLTP su eficiencia es en medida al menor consumo de recursos, a diferencia de los procesos batch. También sabemos que los tiempos de respuesta están fuertemente vinculados a la eficiencia de manejo de recursos (memoria, cpu, disco y red).
La cola de ejecución de procesos del CPU podemos inspeccionarla, en los sistemas GNU/Linux con el comando vmstat. En la primer columna (r) es donde hallamos la informació…