WebSphere 管理员应该了解用于获取线程转储并分析它们的工具。
通常需要线程转储来诊断应用程序性能问题,例如 Java 线程死锁、线程挂起和瓶颈。

在 WebSphere 中进行线程转储
我们建议在 5-8 秒内进行多个线程转储。它可以使用以下方法之一生成:
1.使用wsadmin.sh
- 登录WAS服务器
- 转到您的个人资料和 bin 文件夹
- 运行 wsadmin.sh 文件
[root@localhost bin]# ./wsadmin.sh
WASX7209I: Connected to process "dmgr" on node localhostCellManager01 using SOAP connector; The type of process is: DeploymentManager
WASX7029I: For help, enter: "$Help help"
wsadmin> - 将 JVM 名称设置为变量
set jvm [$AdminControl completeObjectName type=JVM,process= server1 ,*] 注意:例如, server1是服务器 1。将其更改为您的实际 JVM 名称。
wsadmin> set 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 这将生成一个线程转储并使其在您的配置文件路径中可用。
2.使用kill
- 使用 ps 命令查找 JVM 进程 ID。
- 运行kill -3 $PID
# kill -3 $PID 转储位于配置文件路径中。
3. 使用WebSphere管理控制台
- 登录 DMGR 控制台
- 转到左侧的“疑难解答”
- 选择您的 JVM 并单击 Java Core。

获得线程转储后,您可以使用以下工具对其进行分析:
分析 WebSphere 线程转储
分析转储总是很困难,但以下免费工具可以提供帮助。
IBM 线程转储分析器 (TDA)
IBM TDA 可帮助您识别 Java 线程挂起、死锁和瓶颈。
IBM TDA 可以在此处下载。这只是一个 jar 文件,下载后您可以通过运行以下命令启动 GUI:
java -jar jca457.jar 
- 单击文件 >> 打开线程转储。
- 浏览文件夹并选择要分析的转储
这将需要几秒钟。您现在已准备好执行下一个分析。
- CPU使用率
- 内存段
- 用户进程资源限制
- 命令行参数
- 环境变量
- 共享类缓存
- 本机记忆
- 线程状态
- 方法
所有这些都可以从“分析”菜单中获得。线程状态分析概述
通过 IBM TDA 享受您正在寻找的分析。
您现在可以生成和分析线程转储以对应用程序进行故障排除。在这里我们将更详细地解释分析器。




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

