Como Administrador de WebSphere, debe tener en cuenta la necesidad de realizar volcados de subprocesos y herramientas para analizarlos.
Los volcados de subprocesos a menudo son necesarios para diagnosticar el problema de rendimiento de la aplicación, como interbloqueos, subprocesos colgados y cuellos de botella en subprocesos de Java.
Taking Thread Dumps in WebSphere
Se recomienda realizar varios volcados de subprocesos en 5-8 segundos. Puede utilizar cualquiera de los siguientes métodos para generarlo.
1. Utilizando wsadmin.sh
- Inicie sesión en el servidor WAS
- Ir al perfil y a la carpeta bin
- Ejecute el archivo wsadmin.sh
[root @ localhost bin] # ./wsadmin.sh WASX7209I: conectado al proceso "dmgr" en el nodo localhostCellManager01 mediante el conector SOAP; El tipo de proceso es: DeploymentManager WASX7029I: Para obtener ayuda, ingrese: "$ Help help" wsadmin>
- Establecer el nombre de JVM en una variable
set jvm [$ AdminControl completeObjectName type = JVM, process =server1, *]
Nota: server1 es, por ejemplo. Cambie esto a su nombre real de JVM.
wsadmin>establecer jvm [$ AdminControl completeObjectName type = JVM, process = server1, *] WebSphere:name=JVM,process=server1,platform=proxy,node=localhostNode01,j2eeType=JVM,J2EEServer=server1,version=8.5.5.0,type=JVM,mbeanIdentifier=JVM,cell=localhostCell01,spec=1.0 wsadmin>$AdminControl invoke $jvm dumpThreads
Esto generará un volcado de subprocesos y estará disponible en la ruta del perfil.
2. Usando kill
- Encuentre el ID del proceso de JVM usando el comando ps
- Ejecutar kill -3 $ PID
# kill -3 $ PID
Encontrará el volcado en la ruta del perfil.
3. Utilización de la consola administrativa de WebSphere
- Inicie sesión en la consola DMGR
- Vaya a Solución de problemas en el lado izquierdo
- Seleccione la JVM y haga clic en "Java core".
Una vez que tenga el volcado de subprocesos, puede utilizar las siguientes herramientas para analizarlos.
Analyzing WebSphere Thread Dumps
El análisis de los volcados siempre es un desafío, y seguir las herramientas GRATUITAS lo ayudará.
Analizador de volcado de subprocesos de IBM (TDA)
Con IBM TDA, puede identificar bloqueos, interbloqueos y cuellos de botella en los subprocesos de Java.
Puede descargar IBM TDA desde aquí. Es solo el archivo jar y, una vez descargado, puede ejecutar lo siguiente para iniciar la GUI.
java -jar jca457.jar
- Haga clic en Archivo >> Abrir volcados de hilo
- Examine la carpeta y seleccione el volcado que desea analizar
Tardará unos segundos y estará listo para realizar el siguiente análisis
- uso de CPU
- Segmento de memoria
- Límite de recursos de proceso de usuario
- Argumento de línea de comandos
- Variable ambiental
- Caché de clase compartida
- Memoria nativa
- Estado del hilo
- Método
Todos están disponibles en el "Análisis”Menú. Un vistazo rápido al análisis del estado de los hilos
Así que revise el análisis que está buscando y diviértase con IBM TDA.
Entonces, ahora, debería poder generar y analizar los volcados de subprocesos para la resolución de problemas de la aplicación. Hay más analizador explicado aquí.