XPocket基于 Java 的性能问题解决工具
XPocket
是PerfMa开源的一套工具整合方案,集合了多个优秀的开源工具,现阶段主要侧重性能领域,工具之间可以相互配合的进行工作,开发人员也可以快速的开发属于自己的插件。
当你遇到以下类似问题时,XPocket
可以帮助到你:
- 系统存在性能问题?
- 问题排查时一头雾水,不知道用什么工具?
- 查找工具,下载和安装都很浪费时间?
- 想自己快速开发一个实用的工具?
- 排查问题十分繁琐,想尽量简化排查方案以供后续使用?
XPocket
支持JDK 8+,支持Linux/Mac/Windows,采用命令行交互模式,提供丰富的 Tab
自动补全功能,支持管道操作。
在线教程
快速开始
1.下载模拟程序,解压并运行
wget https://a.perfma.net/xpocket/download/XPocket-demo.tar.gz tar -xvf XPocket-demo.tar.gz cd simulator sh run.sh
2.下载xpocket,然后解压并运行(注:如果您当前的jdk版本大于jdk8,请使用xpocket_jdk9+.sh)
wget https://a.perfma.net/xpocket/download/XPocket.tar.gz tar -xvf XPocket.tar.gz sh xpocket/xpocket_jdk8.sh
启动成功后如下所示
3.使用插件
1.查看插件列表
plugins
列表如下图所示
2.使用命令 use + pluginName 或者 use + pluginName@NameSpace 来使用插件,例
use jdb@JDK
4.切换插件
- 查看插件列表
- 使用 use + pluginName 或者 use + pluginName@NameSpace 来使用插件
5.获取帮助
利用help命令来获取更多帮助信息
- 获取插件相关的帮助信息 : help + pluginName@NameSpace ,例如。
help jdb@JDK
- 获取命令相关的帮助信息 : help + pluginName.commandName (如果已经切换到插件的操作空间下,可以直接使用 help + commandName 的方式),例如。
help jdb.cont
- 切换到某个插件的操作空间下后,可以通过help命令查看当前插件的命令列表。
6.管道操作
场景:当前插件位于JConsole下,需要attach上我们的demo程序。
-
常规操作(jps -> 获取demo程序的pid -> 使用attach命令attach目标进程)。
-
XPocket的管道操作只需一条命令即可(jps | grep demo | split -i 0 | attach),如下所示。
7.退出插件
XPocket退出插件的方式很简单,只需要使用命令 cd
即可,cd命令可以退出当前插件,使得当前的操作空间回到系统层,如下图所示。
8.退出XPocket
退出XPocket使用命令 quit
即可,如下图所示
插件开发
详情请见开发者指南
评论