使用 PerfServlet 检索性能数据
PerfServlet 用于简单的端对端检索性能数据,IBM® 或第三方供应商提供的任何工具都可以处理此性能数据。
开始之前
servlet 提供使用 HTTP 请求来查询整个 WebSphere® Application Server 管理域的性能指标的方法。 因为 servlet 通过 HTTP 提供性能数据,所以是否解决如防火墙这样的问题并不重要。
PerfServlet 以 XML 文档格式提供性能数据输出,如所提供的文档类型描述 (DTD) 中所述。在 XML 结构中,结构的分支具有对性能数据的实际观察以及用于提供上下文的分支的路径。

PerfServlet 的具体最佳实践如下所示:
- PerfServlet 开销:PerfServlet 并非设计用于并发运行。作为一个单线程 servlet,它将从可用的服务器连续收集数据。在较大的部署中使用 PerfServlet 时,此单线程操作可能会导致较长的响应时间。
- 大型部署中的 PerfServlet:
- 缺省情况下,首次对 PerfServlet 进行初始化时,该工具将检索部署它的单元中节点和服务器的列表。因为收集此数据会花费系统处理时间,所以 PerfServlet 会将此信息保存为高速缓存列表。要强制该 servlet 刷新其配置,可以使用选项“refreshconfig=true”。但是,除非必需,否则建议不要使用此选项,因为此选项会对 PerfServlet 处理添加额外的开销。
- 如果要查找特定服务器的性能数据,请使用选项、节点和服务器。
- PerfServlet 响应时间:PerfServlet 的响应性取决于以下因素:
- 单元中存在的应用程序服务器数。
- 单元中配置的资源(包括应用程序)数。
- PerfServlet 备用工具:如果要查找使用 PerfServlet 来通过编程方式捕获数据的备用工具,请参阅 Perf MBean 编程接口文档,该文档位于 WebSphere Application Server 信息中心的参考 > 编程接口 > MBean 接口部分中。
从 V6.0 开始,WebSphere Application Server 中的 PerfServlet 使用 JMX Perf MBean 接口来检索 PMI 数据,并输出使用 Java™ Platform, Enterprise Edition (Java EE) 1.4 性能数据框架的 XML 文档来描述统计信息。V6.0 中的 PerfSerlvet 还可以提供与 PerfServlet 5.0 兼容的输出。为了提供 PerfServlet 5.0 兼容的输出,V6.0 中的 PerfSerlvet 使用 PMI 客户机接口。
性能 servlet .ear 文件 (PerfservletApp.ear) 位于 WAS_HOME/installableApps 目录中,其中 WAS_HOME 是 WebSphere Application Server 的安装路径。
从 V6.1 开始,必须启用应用程序安全性才能让 PerfServlet 生效。