初级Java工程师也能轻松进行JVM调优了
本文来自: PerfMa技术社区
Java 性能调优对于每一个Java程序员来说,是实现技术进阶必不可缺的知识了。比如:一台8G的服务器怎么配置JVM参数?我的JVM参数是否合理?如何分析内存Dump文件?如何分析线程Dump文件?等等...,你肯定或多或少都遇到过,熟知Java虚拟机的工作原理可以大幅提升日常编程的效率,对寻常Bug的修复更是轻而易举。
为此,PerfMa推出了一款 Java 应用综合体检工具,将原本枯燥繁杂的配置项、线程状态等信息通过清晰美观的可视化界面展现,且对重要指标进行了分析和详解,来帮助 Java 工程师们可以更便捷的进行应用性能调优。
下面就让我们来全面了解一下如何使用 XPocket 吧~
「XPocket - Java 应用综合体检」
一款针对 Java 应用程序的命令行工具包。通过简单的交互,可以对 Java 程序进行综合体检。
-
JVM 参数优化:全面诊断JVM参数,给出综合优化建议,并提供优化后的参数列表,即使不太懂JVM参数的初级用户,也可以借助本产品得到相对合理的参数列表。
-
Java线程分析:更直观的定位各种线程,线程池泄露问题。更全面的展示线程,线程池,锁等数据的内在联系。
-
更多功能正在加强中,敬请期待~
最新版,工具下载地址:
前置条件
JDK 1.6 ~ 1.8,环境变量 JAVA_HOME
已设置。
准备待检 Java 进程
启动任意的 Java 进程。这里以一个从 Spring Boot 官网生成 Web Demo 工程为例,为了方便展示效果,为它加上一些 JVM 参数:
java -Xmx256M -Xms100M -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -jar demo-0.0.1-SNAPSHOT.jar
启动
进入对应版本号目录
-
Window 用户,双击执行 xpocket.bat
-
Linux/MacOS 用户,命令行执行 sh xpocket.sh
支持游客模式,但游客的分析数据会被公开,推荐激活后使用。
Attach Java 进程
激活成功(或以游客模式登入)后,自动列出当前运行的Java进程。选择一个进程,输入对应的序号,回车。
JAVA 线程分析
输入thread
,回车。 将执行一次线程Dump并分析。 可以查看当前进程的线程状态统计、线程池概况、锁概况。
可以根据提示,访问「XSheepdog - Java线程Dump分析」页面,获取更加详细的线程分析报告。
JVM 参数优化
输入args
,回车。
可以查看进程的JVM参数,并根据当前实际环境信息(内存、CPU、操作系统、JDK版本)生成一份针对性的优化建议。
可以根据提示,访问「XXFox - Java虚拟机参数分析」页面,获取更加详细的JVM参数优化建议。
一起来学习吧:
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Doris存储层设计介绍1——存储结构设计解析
1整体介绍 Doris是基于MPP架构的交互式SQL数据仓库,主要用于解决了近实时的报表和多维分析。Doris高效的导入、查询离不开其存储结构精巧的设计。本文主要通过阅读Doris BE模块代码,详细分析了Doris BE模块存储层的实现原理,阐述和解密Doris高效的写入、查询能力背后的核心技术。其中包括Doris列存的设计、索引设计、数据读写流程、Compaction流程、Tablet和Rowset的版本管理、数据备份等功能。这里会通过三篇文章来逐步进行介绍,分别为《Doris存储层设计介绍1——存储结构设计解析》、《Doris存储层设计介绍2——读写、compaction流程分析》、《Doris存储层设计介绍3——Tablet管理、数据备份》。 Doris 官方网站:http://doris.incubator.apache.org/master/zh-CN/ Doris Github:https://github.com/apache/incubator-doris Doris 开发者邮件组:【如何订阅】 Doris 微信公众号: 本文为第一篇《Doris存储层设计介绍1——存...
- 下一篇
Spring Boot 2.3.0 发布:聚焦云技术
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! Spring Boot 发布了 2.3.0 版本,添加了对 buildpacks 方式的 Docker、分层镜像、优雅关机、存活性(liveness)和就绪性(readiness)探针的支持。另外一个值得关注的变化就是它支持 Java 14,同时保持了对 Java LTS 版本 8 和 11 的支持。Buildpacks 是 Dockerfiles 的一个替代方案。Buildpacks 能够自动探测运行 Docker 容器中的应用时所需要的软件。例如,它会探测应用中所使用的 Java 版本。基于该版本,buildpack 会选择所指定的 JRE 并构建 Docker 镜像。借助 Maven 或 Gradle,可以通过如下的命令创建 Docker 镜像: spring-boot:build-image 注意,创建基于 buildpacks 的 Docker 镜像不需要任何配置。通过使用 bootBuildImage task ,我们可以修改 buildpack 的一些配置。例如,构建文件中...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题