五大最佳开源java性能监控工具

若是你正在寻找性能监控工具,不妨看看如下推荐的这五款开源工具,这些工具目前已经能够替代付费工具了,你能够看看是不是你的最佳选择。本文推荐的五款开源工具目前是开源社区中最受欢迎的。html

  1. Stagemonitorjava

  Stagemonitor提供了一个Java监控代理程序,它是使用集群应用程序堆栈构建的。意思是它旨在监控在多个服务器上运行的应用程序。该工具与时间序列数据库(TSDB)集成。此工具已针对时间序列数据以及按时间索引的数字数组进行优化。包括如下数据库:Elasticsearch,Graphite和InfluxDB。web

  Architecture:数据库

五大开源java性能监控工具

  Stagemonitor包含一个位于Java应用程序中的代理,可将度量标准和请求跟踪发送到中央数据库。该工具只须要一个实例就能够监控全部应用程序,实例和主机,而且能够部署在你本身的数据中心内。后端

  在监控方面,你能够从集群或直接从开发人员服务器查看历史或实时数据,建立自定义报警机制,并为每一个指标定义阈值。数组

  Stagemonitor包括一个仪表板,能够可视化分析你感兴趣的不一样指标和请求。你能够自定义仪表板,编写自定义插件,甚至使用第三方插件。它提供了一个无需后端的浏览器窗口小部件,自动注入受监控的网页。在官方文档中,Stagemonitor还支持不基于servlet的应用程序。浏览器

五大开源java性能监控工具

  若是你对ELK堆栈很熟悉,该工具绝对值得一试。缓存

  2. Pinpoint服务器

  Pinpoint是用于大规模分布式系统的APM工具。它是在Dapper(一个由Google构建的分布式系统跟踪基础架构)以后构建的,为开发人员提供有关复杂分布式系统行为的更多信息。多线程

  Architecture:

五大开源java性能监控工具

  该工具经过在分布式应用程序中跟踪事务,帮助分析系统的总体结构及其中的组件是如何互相影响的。它旨在解释每一个事务如何执行,跟踪组件之间的行为,指出发生问题的区域和潜在的瓶颈。

  仪表板帮助可视化组件如何链接,并容许用户实时监控应用程序内的活动线程。Pinpoint还容许用户查看请求计数和响应模式,以便及时识别潜在问题。你能够查看包括CPU使用率,内存/垃圾回收和JVM参数等详细信息。

五大开源java性能监控工具

  若是你据说过Dapper,或者想要监控和分析复杂的分布式系统,你必定要试试这个工具。

  三、MoSKito

  MoSKito内包含三种工具:MoSKito-Essential:最基本的独立项目。它是MoSKito功能的核心,能够监控应用程序。MoSKito-Central:用于存储性能数据的集中存储服务器。MoSKito-Crotrol:用于监视多节点Web应用程序性能的工具。

  使用该工具以前,你只需将.jar文件放到WEB-INF / lib文件夹中,或者在web.xml文件中新建一个节点。一旦工具启动并运行,它就会开始收集性能数据,进行实时分析,同时将数据存储在本地。

  该工具会收集全部的性能指标,如线程,内存,缓存,存储,服务,注册,转换,SQL,负载分布等。它不须要更改代码,自己就支持全部主流的应用程序服务器(Tomcat,Jetty,JBoss,WebLogic)。

  你能够根据系统了解什么时候达到阈值,以及被监控用户的操做记录。除了基于Web的仪表板,该工具还提供了一个移动应用程序来监控应用程序性能。

五大开源java性能监控工具
MoSKito’s Essential

  MoSKito于2007年首次推出,如今它是一个众所周知的稳定的工具,由团队和社区共同支持,包括付费支持选项,这也是该开源工具的巨大优点。

  4. Glowroot

  Glowroot是一个快速,干净和简单的APM工具。它能够跟踪捕获缓慢的请求和错误,可以记录每一个用户的操做时间,以及SQL捕获和聚合。该工具还可保留汇总全部历史数据。

  它经过图表的方式显示响应时间分布和响应时间百分比,并容许用户经过移动设备监控应用程序性能。

  Architecture:

五大开源java性能监控工具
Glowroot architecture

  使用Glowroot以前须要下载并解压安装文件,并将-javaagent:path/to/ glowroot.jar添加到应用程序的JVM参数中。启动应用程序后,剩下的全部操做能够访问http:// localhost:4000。

  一旦工具启动并运行,你将得到可以设置响应时间百分比和MBean属性的警报。Glowroot提供对跨多线程异步请求的全面支持,支持Tomcat,TomEE,JBoss EAP,Wildfly,Jetty和Glassfish等服务器。

五大开源java性能监控工具
Glowroot’s dashboard

  若是方便简单是你对监控工具的要求,毫无疑问,该工具最合适。

  5. Kamon

  Kamon是为在JVM上运行的应用程序而构建的工具包。更具体地说,它是为使用Typesafe平台(使用Scala,Akka,Spray和/or Play!)构建的应用程序,但仍然对其余JVM平台和语言提供支持。

  Architecture:

五大开源java性能监控工具

  Kamon做为核心模块,包含全部记录和跟踪操做的API以及为应用程序提供字节码检测和报告功能的可选模块。换句话说,它提供了一个简单的API来记录JVM应用程序的指标和性能信息。

  全部Kamon模块均可以经过Maven Central得到,你只须要将它们添加为项目的编译依赖项便可。以后只需启动Kamon,全部可用模块将自动启动,不须要显式激活/启动这些模块。

  若是你使用的是JVM语言,或是Scala和Akka,而且须要一款性能监控工具,Kamon多是最友好的选择。

相关文章
相关标签/搜索