Java EE 应用程序计数器监控

标签 java performance jakarta-ee monitoring

我在 WebLogic 上部署了一个 Java EE 应用程序,我为其设置了监视计数器,并得到了以下结果:

enter image description here

实际上,我对这些计数器中的大多数都不熟悉,我已经阅读过其中的大多数内容,但我不知道如何确定我的应用程序的行为是好是坏。

我的问题是:

  1. 我如何知道我的表现是否良好(如果我的应用表现良好)?是否有任何具体数字可以开始比较系统行为。
  2. 我必须关注的最重要的计数器是什么?
  3. 任何可以帮助我理解此计数器的想法或文章。

注意:我的服务器计算机规范为:(操作系统:MS Windows server 2008,CPU:Core i7,RAM:16GB)并且 JVM 参数(Xmx:4096,Xms:1024,-XX:MaxPermSize:1200,-XX:NewSize:1200)

提前致谢。

最佳答案

普通数字不像图表那样具有描述性。我建议您使用 JDK 中的 VisualVM 或 Java Mission Control 等工具。从 JDK 7 Update 40 开始,Mission Control 与 JDK 捆绑在一起。使用这些工具,您可以连接到任何本地或远程 JVM 进程。如果您要连接到远程 JVM,则应该通过 JVM 参数 -Dcom.sun.management.jmxremote.port=9010 启用 JMX

这些工具将允许您监控以下内容:

  • CPU 使用率
  • 内存使用情况
  • 所有应用程序线程及其状态
  • GC Activity
  • 等等

所有这些特征都显示为动态变化的图表。此外,您可以通过 JMX bean 创建自己的控件并监视它们。例如,如果您为其创建 JMX bean,则可以监视 JDBC 连接池。

关于Java EE 应用程序计数器监控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21215091/

相关文章:

java - 如何使用 thead 和 tbody 创建 FlexTable

用于 JSON 通信和 DOM 操作的 javascript 框架?

许多异步 HTTP 调用的 JavaScript 事件处理性能

用于在应用程序之间委派任务的 Java 企业架构

jakarta-ee - Java : Insert multiple rows into MySQL

java - 小服务程序 3.0 : Can't send an asynchronous response?

java - BufferedInputStream 的 available() 行为不符合预期

c - 在 C 中,哪个更快 : if with returns, 或者如果有返回?

c++ - C++ 和汇编中的对数

java - Lock.tryLock超时异常的JUnit测试场景