针对WildFly和EAP运行Java Mission Control和Flight Recorder

Java Mission Control (JMC)使您可以监视和管理Java应用程序,而无需引入通常与这些类型的工具相关的性能开销。 它使用为正常的JVM动态优化而收集的数据,从而形成了一种非常轻量级的方法来观察和分析应用程序代码中的问题。 JMC由三种不同类型的工具组成。 使用JMX浏览器可以浏览机器上所有可用的JVM实例,还可以使用JMX控制台浏览连接的JVM上的JMX树。 最后但并非最不重要的一点是Java Flight Recorder(JFR)。 这正是工具的一部分,该工具执行JVM实例的低开销分析。

免责声明:有关许可的字词

该工具是Oracle JDK下载的一部分。 特别是,JMC 5.4是JDK 8u20和JDK 7u71的一部分,并且根据Java SE平台产品的Oracle二进制代码许可协议以及Java SE Advanced和Java SE Suite的商业可用功能进行分发。 IANAL,但据我所知,这允许您将其用于您的个人教育以及潜在地作为开发人员测试的一部分。 确保与您认识的可以回答此问题的人联系。 这篇博客文章只是一些小技巧,并假设您从许可证的角度知道自己在做什么。

添加Java可选参数

要解锁JFR功能,您需要在WildFly 8.x / EAP 6.x配置中输入一些可选参数。 找到$ JBOSS_HOME / bin / standalone.conf | conf.bat并添加以下参数:

-XX:+UnlockCommercialFeatures -XX:+FlightRecorder

现在,您可以使用此知识库条目中所述的jcmd命令来开始录制。 实际上,另一种方法是直接从JMC开始录制。

从JMC开始录制

江铃汽车 第一步是启动JMC。 在%JAVA_HOME%/ bin文件夹中找到它。 启动后,您可以使用JVM浏览器查找要连接的WildFly / EAP实例。 右键单击它以查看所有可用选项。 您可以启动JMX控制台或启动Flight Recording。 JMX控制台比JConsole有点奇特,并且允许使用大量指标和统计信息。 它还允许您设置一堆触发器,浏览器MBean和其他功能。 请查看文档以获取所有详细信息。 真正有趣的是开始飞行记录的功能。 如果选择此选项,则会弹出一个新向导,让您稍微调整设置。 除了必须选择存储记录的文件夹之外,您还可以在不同的记录模板之间进行选择。

start_recording

使用“服务器配置文件”模板进行的一分钟录制几乎不会对服务器造成任何负载,从而导致文件大小为1.5 MB。 因此,最好留意存储所有内容的容量。

您还可以在对话框的后面确定一堆参数的配置粒度。 但是最后,您单击“完成”,录制会话开始。 您可以决定将其推送到后台,并在捕获数据时继续工作。

分析飞行记录器文件

这很容易。 您可以使用JMC打开记录,然后单击结果。 如果使用附加参数启用了默认录制:

-XX:FlightRecorderOptions=defaultrecording=true

您还可以通过JVM浏览器直接转储记录。 选择要下载数据的时间范围很容易,或者也可以决定下载完整的记录。

dump_recording

翻译自: https://www.javacodegeeks.com/2014/12/running-java-mission-control-and-flight-recorder-against-wildfly-and-eap.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/361122.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#堆栈和堆的讲解

OS和CLR通常将用于容纳数据的内存划分为两个独立的区域,每个区域都采用截然不同的方式来管理:堆栈(Stack)和堆(heap)。(1) 调用一个方法时,它的参数以及它的局部变…

jQuery中的常用内容总结(一)

jQuery中的常用内容总结(一) 前言 不好意思(✿◠‿◠),由于回家看病以及处理一些其它事情耽搁了,不然这篇博客本该上上周或者上周写的;同时闲谈几句:在这里建议各位开发的童鞋,如果有疾病尽快治疗,不要拖&a…

关于Firefox在Win8下界面显示错乱的解决方法

最近又把Windows8安装上,由于平常做前端开发用的最多的还是Firefox,因此在家的机器上也安装上Firefox,但使用中发现Firefox界面老是错误,特别是那种乱套的颜色,不得其解,查看设置发现默认启用了硬件加速&am…

react ant design路由配置

最初的时候,只使用了antd中的menu,header和footer都是自己写的组件,在写路由时,总是报如下错误: 相关的路由配置如下: 在网上查的说是组件未暴露出去或者是return 这一行必须有个括号或者标签,我…

线程魔术技巧:Java线程可以做的5件事

Java线程最鲜为人知的事实和用例是什么? 有些人喜欢爬山,有些人喜欢跳伞。 我,我喜欢Java。 我喜欢它的一件事是,您永不停止学习。 您每天使用的工具通常可以向您展示全新的方面,以及您还没有机会看到的方法和有趣的用…

强制删除tfs未迁入项的两个方法。

方法1: 打开Vs2008的命令提示: 查看用户的工作区: 输入: Tf workspaces /owner:所有者或* /server:服务器名称或IP ex: tf workspaces /owner:stcct(所有者) /server:203.156.1.100(Ip地址) 删除用户的未迁入项: 输…

VUE 全选

<div id"vue_det"> <p>全选:</p> <input type"checkbox" id"checkbox" v-model"checked" change"changAllChecked"/> <label for"checkbox"> {{checked}} <…

RabbitMQ –使用Spring集成Java DSL串行处理消息

如果您曾经需要使用RabbitMQ来串行处理消息&#xff0c;并且有一群监听器来处理消息&#xff0c;那么我所看到的最好方法是在监听器上使用“独占消费者”标志&#xff0c;每个监听器上有1个线程来处理消息。 专用使用者标志可确保只有1个使用者可以从特定队列中读取消息&#…

添加删除约束脚本 ::fn_get_sql

添加约束&#xff1a;alter table table1 add constraint pk_name primary key (name) --添加主健约束,名称作为主健&#xff1b; alter table table1 add constraint pk_name unique (name) --添加唯一约束,…

jquery 实现 点击把数据移动右侧 点击再次移回到左侧

2018年第一发 希望新的一年和大家一下学习更多知识 JS&#xff1a;//把数据左边挪到了右边&#xff0c;再从右边移动回来function moveOption(e1, e2){ $("#" e1 " option").each(function(){ if($(this).is(:selected)){ var oVal…

企业Java中事务隔离级别的初学者指南

介绍 基于ACID事务属性的关系数据库强一致性模型。 在本文中&#xff0c;我们将阐明对资源本地事务和JTA事务使用不同的事务隔离级别和各种配置模式的背后原因。 隔离和一致性 在关系数据库系统中&#xff0c;原子性和持久性是严格的属性&#xff0c;而一致性和隔离性或多或少…

点击左侧跳到右侧

效果图 JS部分 function moveOption(e1, e2){ try{ for(var i0;i<e1.options.length;i ){ if(e1.options[i].selected){ var e e1.options[i]; e2.options.add(new Option(e.text, e.value)); e1.remove(i); iii-1 } } } catch(e){}} HTML以及CSS部分 <for…

好的微服务架构=企业服务总线(ESB)的灭亡?

这些天&#xff0c;似乎每个人都在谈论微服务。 您可以在数百篇文章和博客文章中读到很多有关该主题的文章&#xff0c;但是我建议的出发点是Martin Fowler的这篇文章 &#xff0c; 该文章引发了有关这种新建筑概念的大量讨论。 本文介绍了创建良好的微服务体系结构所面临的挑战…

移动端UC /QQ 浏览器的部分私有Meta 属性

<meta name"format-detection" content "telephoneno"/> 格式检测 禁止识别我们页面中的数字&#xff0c;防止把其当作电话识别&#xff0c;emailno 禁止识别邮箱 IOS设备对META的私有属性 <meta name"apple-mobile-web-app-capable&qu…

IDC关于使用JBoss Fuse的商业价值的报告(与Apache Camel一起使用)

这只是一篇博客文章&#xff0c;具有更多的商业性质&#xff0c;但是您不能一无所有。 实际上&#xff0c;这也是使Apache Camel保持活力并保持良好状态的原因&#xff0c;这还归功于其商业上的成功。 希望从JBoss Fuse之类的产品中寻找有关在商业上使用Apache Camel的附加值的…

书评:精通Lambda:多核世界中的Java编程

从版本8开始&#xff0c;λ编程&#xff08;lambda编程&#xff09;终于在Java世界中引入。此功能将在很大程度上改变Java开发人员的编程方式以及针对样板代码的新“武器”。 Java 8通过引入新的Stream API&#xff0c;大部分已将函数式编程应用在Collections API中。 此外&…

js框架

PS&#xff1a;https://www.cnblogs.com/zx0303/p/js-liuxingkuangjia.html 下边这张表简述了js目前的流行框架的优点: AngularJ.js 由google开发&#xff0c;2009年首次发布 很流行的前端框架使用Angular.js创建第一个UI&#xff0c;成本很…

Spring-Quartz (一)

摘自&#xff1a; http://www.blogjava.net/Jay2009/archive/2009/03/25/259176.htmlSpring为创建Quartz的Scheduler、Trigger和JobDetail提供了便利的FactoryBean类&#xff0c;以便能够在Spring 容器中享受注入的好处。此外Spring还提供了一些便利工具类直接将Spring中的Bean…

如何在Java Reflection中的类下获取所有方法信息?

本文以我以前的文章为基础 。 在本文中&#xff0c;我们将看到如何使用Java Reflection检索类相关信息。 我们将重点介绍方法名称。 注意&#xff1a;我将创建一个单独的反射器实用程序类&#xff0c;在该类中&#xff0c;我们在其构造函数中输入一个目标类&#xff0c;然后使…

在Java EE 7上骑骆驼–带有Swagger文档的REST服务

骆驼开箱即用。 Swagger集成就是其中之一。 不幸的是&#xff0c;大多数已经存在的功能都严重依赖于Spring。 但这并不能阻止我们在普通的Java EE 7应用程序中使用它们&#xff0c;因为有时它只是服务器的轻量级变体。 但我不想再对此进行讨论。 相反&#xff0c;我认为在所有情…