XPocket基于 Java 的性能问题解决工具

联合创作 · 2023-10-01 19:58

XPocket 是PerfMa开源的一套工具整合方案,集合了多个优秀的开源工具,现阶段主要侧重性能领域,工具之间可以相互配合的进行工作,开发人员也可以快速的开发属于自己的插件。

当你遇到以下类似问题时,XPocket可以帮助到你:

  1. 系统存在性能问题?
  2. 问题排查时一头雾水,不知道用什么工具?
  3. 查找工具,下载和安装都很浪费时间?
  4. 想自己快速开发一个实用的工具?
  5. 排查问题十分繁琐,想尽量简化排查方案以供后续使用?

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 即可,如下图所示

插件开发

详情请见开发者指南

浏览 36
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报