前言:做了一个监控应用服务器的项目(支持Tocmat、WebSphere、WebLogic各版本),过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯路,遇过不少困难。为了留下点印记,给后来人留下点经验之谈,助之少走弯路,故将这些经验整理出来,与大家分享。水平有限,难免疏漏,还望指正。如有疑问,欢迎留言,或者加入Q群参与讨论:35526521。
监控WebSphere常见的两种方案比较:
方案一、通过perfServletApp进行监控
perfServletApp项目是由WebSphere提供的(在安装目录下可以找到PerfServletApp.ear ,默认没有部署),用于简单的端对端检索性能数据, IBM或第三方供应商提供的任何工具都可以处理此性能数据。通过servlet访问,返回XML 格式的信息,然后解析XML即可获得相应的监控数据。
方案二、使用JMX 接口开发监控程序
通过使用PerfMBean或个别MBean,您可使用AdminClient API获取性能监控基础结构( PMI )数据。
两种方案优劣比较
通过perfServletApp进行监控 |
使用JMX接口开发监控程序 |
可以使用现有的成熟代码,减少工作量 |
全部代码需要从零开始 |
支持各不同版本时无差别 |
支持各不同版本比较麻烦,每个版本用的JAR包不一样,实现机制也不一样 |
可能存在特殊需求而perfServlet不能满足的情况 |
可支配性强,可以访问到WAS提供的所有MBean |
一、通过perfServletApp进行监控
perfServletApp项目是由WebSphere提供的(在安装目录下可以找到PerfServletApp.ear,默认没有部署),用于简单的端对端检索性能数据,IBM或第三方供应商提供的任何工具都可以处理此性能数据。通过servlet访问,返回XML