Oracle 应用服务器监视与诊断

该 OBE 介绍如何使用网格控制 10g 第 2 版监视应用程序性能、诊断应用程序性能问题并发现导致问题的根本原因。
此外,该示例还介绍了如何无缝监视多个应用服务器场(每个场有许多集群、高可用性组和应用程序)的复杂中间件部署。

大约 1 个小时

主题

该 OBE 包括以下主题:

将鼠标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:此操作会同时加载所有屏幕截图,网速较慢时,响应时间可能会比较长。)

注:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。

这些屏幕截图不能反映用户的具体环境。只是说明如何在 Oracle 企业管理器 10g 网格控制控制台找到具体的功能。

概述

生产环境中运行的基于 Web 的应用程序一般部署在一组中间件组件和数据库上。应用程序性能问题大多是由使用应用程序的最终用户发现和报告的。在这些复杂环境中诊断和解决问题是非常耗费时间的。而最终用户在问题解决前不得不忍受低劣的性能。

网格控制 10g 第 2 版允许管理员对应用程序及其与运行该应用程序的系统组件的关系进行建模。这就使得管理员可以监视应用程序,将应用程序性能与底层系统组件性能相关联。应用程序与其系统组件的综合建模以及对应用程序的监视帮助管理员迅速发现和解决性能问题。

网格控制的应用服务器诊断解决方案使应用程序管理员可以主动监视最终用户性能。管理员甚至可以在最终用户报告性能问题前发现这些问题。应用服务器诊断解决方案使管理员可以迅速将性能问题隔离到某个具体层。他们将能把导致性能问题的根本原因定位到应用程序组件,然后继续寻找深层原因,直至找到导致问题的那个 JSP、Servlet、EJB 方法或 SQL。
网格控制 10g 第 2 版使管理员能以可伸缩的方式全面高效地监视应用服务器。监视量度的统计累计可以使管理员显著减少用在监视网格环境上的时间,同时加快解决速度。

返回主题列表

先决条件

在执行该 OBE 中提到的任务前,您至少已发现一个 Oracle 应用服务器场、集群和实例。您还应已经把 PetStore Web 应用程序部署到 Oracle 应用服务器实例。

返回主题列表

情景

Linda 负责监视其公司的一个基于 Web 的生产应用程序。她的生产部署需要对多个应用服务器场和数据库进行复杂的配置。每个场有多个集群、高可用性组和应用程序。全世界很多用户都在访问这个生产应用程序。她必须确保该应用程序的所有用户都能有好的性能体验,尤其是从英国办事处访问的用户。她必须主动监视应用程序、发现性能问题并迅速解决这些问题。

返回主题列表

诊断 Oracle 应用服务器

这一部分包含下列主题:

监视最终用户性能

最终用户性能监视/Page Performance 监视最终用户性能。这将帮助管理员发现最慢的 URL、最慢的域、最慢的访问者和最慢的 Web 服务器。管理员使用“分析”特性进行复杂的分析。执行下列步骤监视最终用户性能,发现域中最慢的访问者:

1.

打开一个浏览器,并输入以下 URL:

http://<管理服务主机名>.<域>:<端口>/em/

没有运行其它实例的计算机上的默认端口值是 7777。但是,如果该计算机运行了其它实例,则该端口可能有所不同。

将显示 Login 页面。输入用户名和口令,然后单击 Login 按钮。

2.

单击 Targets 选项卡。

3.

单击 Web Applications 子选项卡。

4.

单击 Pet Store Web 应用程序。

5.

单击 Page Performance 子选项卡。

6.

您将在“Slowest Response Times”部分中看到一些数据。从 View By 下拉列表中选择 Visitor

注: 如果没有看到 Page Performance 数据,请转至“Monitoring Configuration”页面,单击“Manage Web Server Data Collection”链接。确保配置了一个 Web 服务器,并选中了“Collection Enabled”复选框。如果这个页面上没有 Web 服务器,则单击相关的链接“System Configuration”,确保您使用的是 Petstore 系统,并将该 Web Cache 组件选中为“关键组件”。

7.

您将看到基于访问应用程序的访问者的最慢响应时间。从 View By 下拉列表中选择 URL

8.

单击列表中最慢的 URL 进一步下钻,查看其性能。

9.

您在这里能看到有关您正监视的特定页面的性能的更多详细信息。影响特定页面性能的因素包括系统负载、打开连接的数量或支持组件(如 Web 服务器或后端数据库)的性能。查看较长时间段内的响应时间可以帮助您在出现性能瓶颈时发现趋势和固定的时间周期。单击 Analyze 按钮。

10.

Analyze URL 页面将帮助您仔细研究一个 URL 在任意 URL、域、区域或 Web 服务器组合下的性能。

返回主题列表

监视页面监视列表和区域

使用页面监视列表,您可以监视最重要的页面而不用考虑它们的性能。您可以使用指向该页面的 URL 创建页面监视列表。区域是一组域和子网。您可以通过将区域定义为一组域或子网监视特定地理位置的最终用户性能。执行下列步骤定义页面监视列表项并监视这些项目:

1.

单击 Web Application 定位链接返回 Page Performance 页面。

2.

单击 Monitoring Configuration 子选项卡。

3.

单击 Web Application Tasks 部分下的 Manage Watch List 链接。

4.

单击 Add 按钮添加监视列表 URL。

5.

指定名称为 Verify;指定 URL 为 /petstore/control/verifysignin。单击 Submit 按钮。

6.

您可以看到已经将该 URL 添加到监视列表中。单击 Web Application 定位链接返回 Monitor Configuration 页面。

7.

单击 Web Application Tasks 部分下的 Manage Regions 链接。

8.

单击 Add 按钮添加该区域。

9.

指定名称为 USA Oracle;指定域名为 us.oracle.com。单击 OK 按钮。

10.

您可以看到已经添加了区域和域。单击 Web Application 定位链接返回 Monitor Configuration 页面。

11.

单击 Page Performance 子选项卡。

12.

现在,您在这个页面上就可以看到您在页面监视列表中指定的 URL 了。您还可以查看基于该区域的最慢响应时间。从 View By 下拉列表中选择 Region

13.

您可以看到基于您定义的 Oracle USA 区域的最慢响应时间。

返回主题列表

请求性能提供有关所有用户访问的所有 URL 的性能的完整历史记录。它将帮助您诊断使用最终用户性能监视或信标监视发现的页面性能问题。您可以执行下列任务来隔离和定位导致问题的原因:

执行下列步骤监视请求性能:

1.

单击 Request Performance 子选项卡。

2.

您将看到“Slowest Requests by Application Server Average Time”部分的数据。单击列表中最慢的请求。

注: 如果没有看到数据,请转至“Monitoring Configuration”页面,单击“Manage OC4J Data Collection”链接。确保配置了一个 OC4J,并选中了“Collection Enabled”复选框。如果这个页面上没有 OC4J,则单击相关的链接“System Configuration”,确保您使用的是 Petstore 系统,并将该 OC4J 组件选中为“关键组件”。

3.

单击 J2EE TIme (ms) 对应的链接,下钻最慢的请求,查看 servlet、JSP、EJB 用时的明细。

4.

这个页面可用于查看某个特定请求的 J2EE 组件的性能。该特定请求显示在页面标题正下方的 Request 域中。可以将这个页面中的数据与 Request Performance Monitoring 数据比较,从而对您的应用程序性能有一个完整的、端到端的了解。使用 Request Processing Time and Load 图表研究服务器活动对请求响应时间的影响。注意命中的数量与处理每个 J2EE 子系统组件所用时间的比较。

使用 Processing Time Breakdown 图表可以分析子组件级的中间层。这使您可以为调整或修复 Web 应用程序的相应元素做出有依据的、准确的决策。通过下钻 servlet、JSP 或 EJB 时间查看调用详细信息,进一步分析每个 J2EE 子系统组件。单击 Correlate Performance 链接,将该 URL 的性能与其他系统组件量度关联。

5.

从这个页面,您可以将该 URL 的性能与其他系统组件量度关联,查看是否有其他系统相关的因素影响了该 URL 的性能。单击 URL Performance in J2EE 定位链接,切换回 J2EE 性能页面。

6.

单击 Performance Details Links 部分下面的 Processing Calling Stack 链接,查看请求的完整调用处理堆栈。

7.

使用这个页面可以查看选定 URL 调用的所有 J2EE 子系统组件的性能数据。通过了解组件之间的关系以及调用组件的顺序,您可以区分特定的性能问题,就应用程序调整的重点做出更好的决策。这个页面是 Oracle 企业管理器中间层请求性能监视特性的一部分。单击 Web Application 定位链接返回 Request Performance 页面。

8.

从 Slowest Requests By 下拉列表中选择 Database Server Average Time 找到就数据库时间来说最慢的 URL。


9.

Database Server Average 列中单击最长的数据库时间。

10.

从 View Data 下拉列表中选择 Last 7 Days

11.

单击 Processing Time Breakdown 部分下的 Database time 链接查看执行的所有 SQL。

12.

单击用时最长的 SQL 语句。

13.

使用这个页面可以查看某个数据库组件的特定调用,如 JDBC 连接或 JDBC 连接执行的特定 SQL 语句。

单击 SQL Statement Analysis 链接。

14.

选择存储 petstore 模式的数据库,然后单击 Select 按钮。

15.

指定 SYS 用户的凭证,然后单击 Login 按钮。

16.

使用 SQL Details Statistics 页面可以:

  • 查看该 SQL ID 的 SQL 语句。
  • 查看实时或历史执行活动和统计信息。
  • 选择另一个要查看的 SQL ID。
  • 如果这个 SQL 语句有多个计划,选择一个计划哈希值。
  • 查看表示历史数据的不同类型的图表。
  • 运行 SQL Tuning Advisor(10g 版或更高版本)。

由于该语句可能时间太久已不在共享池中,因此可能有时候会得不到统计数据。

返回主题列表

信标事务存在性能问题,而且是服务器端问题。在这种情况下,您可以转至 Transaction 首页,从浏览器以交互方式执行该事务,获得该运行详细的服务器端诊断。可在事务跟踪结果上执行下列诊断任务:

执行下列步骤来管理交互式事务跟踪:

1.

单击 Web Application 定位链接返回 Request Performance 页面。

2.

单击 Test Performance 子选项卡查看事务的性能。

3.

单击事务的名称,转至一个 Web 事务/测试的首页。

4.

单击 Play With Trace 按钮。这将以交互方式重新执行您的事务

5.

单击 Show Results 按钮查看跟踪结果。

6.

指定 ias_admin 口令,然后单击 OK 按钮。

7.

这个页面显示您刚才使用 Web Transaction Home 页面上的 Play with Trace 按钮执行的事务的性能和跟踪信息。对于您跟踪的每个事务,Trace Results - Overview 页面提供处理服务器端组件所用时间的高级视图。单击 EJB 用时最长的 URL,找到用时较多的 EJB。

8.

使用这个页面可以分析处理特定服务器端组件类型所用的时间。服务器端组件类型包括 Servlet/JSP 组件、EJB 组件和 JDBC/SQL 组件。单击 Trace Results 定位链接。

9.

单击数据库用时最长的 URL,找到用时较多的 SQL。

10.

对于 JDBC/SQL 组件,企业管理器列出当前事务或您从 Trace Results - Overview 页面选择的特定 URL 处理的所有 SQL 组件。对于每条 SQL 语句,该表提供了许多性能量度。您可以通过这些性能量度比较其他 SQL 语句的性能,从而发现可能是性能瓶颈的 SQL 语句。

返回主题列表

前一部分从最终用户角度介绍了性能监视和诊断流程。然而,有时候可能是系统组件出了问题,而最终用户并没有受影响。该部分从系统组件角度介绍应用程序监视和诊断。这一部分包含下列主题:

在这个主题中,您将看到如何使用将多个应用服务器作为一个应用服务器进行监视的方法来监视应用服务器场。您将查看服务器场的整体运行情况。场上量度的合计很好地表示了场的性能。执行下列步骤监视场:

1.

单击 Targets 选项卡。

2.

单击 Application Server 子选项卡。

3.

单击列表中的 Oracle Application Server Farm 链接。

4.

使用 Oracle Application Server Farm Home 页面可以查看与 OracleAS 场及其成员相关的最重要信息的摘要。这个页面通过提供有关生成的警报、策略违规、配置更改等信息可以帮助您监视 OracleAS 场的整体运行情况。从 Oracle Application Server Farm Home 页面,您可以导航至企业管理器的其他页面,这有助于您完成给定的任务。单击 Metrics 子选项卡。

5.

使用 Oracle Application Server Farm Metrics 页面可以迅速评估 OracleAS 场的性能。这些预定义的关键量度可以帮助您分析 HTTP 响应时间及其吞吐量、servlet 的响应时间及其吞吐量、Web Cache 每秒命中率以及活动会话。单击 Members 子选项卡。

6.

使用 Oracle Application Server Farm Members 页面可以查看 OracleAS 场成员的运行情况。您可以查看 OracleAS 场中的成员列表,检查它们的状态,以及启动、停止或重新启动每个成员。您可以通过扫描 Status 列检查目标成员的状态。请注意,OracleAS 场没有其自己的状态;它的状态取决于其成员目标的状态。您可以通过启动、停止或重新启动成员目标来控制它们。从表中选择成员目标,根据需要单击 Start、Stop 或 Restart。

返回主题列表

在这个主题中,您将查看集群的整体运行情况。集群上量度的合计很好地表示了集群组件的性能。执行下列步骤监视集群:

1.

单击列表中的 Oracle Application Server DCM Managed Cluster 链接。

2.

使用 Oracle Application Server DCM Managed Cluster Home 页面可以查看与 Oracle 应用服务器 DCM 管理的集群(OracleAS DCM 管理的集群)及其成员相关的最重要信息的摘要。这个页面通过提供有关生成的警报、策略违规、配置更改等信息可以帮助您监视 OracleAS DCM 管理的集群的整体运行情况。单击 J2EE Applications 子选项卡。

3.

在这里您会看到所有部署的 J2EE 应用程序及其 OC4J 实例。通过查看“Servlet/JSP Requests Processed”量度,检查集群中所有 J2EE 应用程序实例间的负载是否分配得当。

返回主题列表

Topology 页面帮助您了解每台主机上正在运行的应用服务器和组件、这些组件彼此之间的关系,以及请求是如何在系统的不同层之间路由的。查看 Topology 页面可以发现场组件间的路由关联。您可以通过查看拓朴结构的路由详细信息视图发现路由请求中是否存在配置问题。要查看集群拓扑结构,执行以下步骤:

1.

单击 Topology 子选项卡。

2.

该页面显示整个集群的视图。从 View 下拉列表中选择 Routing Details,然后单击指定区域放大当前视图。Routing Details 显示各种组件将请求路由到拓扑结构中其他组件时所使用的协议和端口。通过 Routing Details 视图,管理员可以立即解决各种拓扑结构配置问题。可以使用 Overview 部分放大或缩小当前视图。

3.

Selection Details 部分用于来显示有关所选目标的信息。如果没有选择目标,该部分为空。单击任何 HTTP Server 目标可获得有关该目标的更多信息。

4.

现在,Selection Details 显示详细信息(如 Name、Type 和 Host)。它还显示严重警报和警告警报以及目标的状态。选择 Show all targets connected to this OracleAS Cluster 复选框。

5.

通过选择该复选框,您可以看到连接到该集群的所有其他目标。从 View 下拉列表中选择 Host

6.

Host 视图显示按主机分组的应用服务器组件。它向该场的所有不同主机提供在该主机上运行的所有组件的直观表示。

返回主题列表

J2EE 应用程序监视特性可用于监视和发现潜在问题。监视 J2EE 应用程序时可以执行下列任务。

按照下列步骤执行上述任务。

1.

单击 Members 子选项卡。

2.

单击 Application Server 实例。

3.

单击 Top J2EE Applications 子选项卡,查看该 Oracle 应用服务器中 J2EE 服务器(OC4J 实例)中最活跃的 J2EE 应用程序。

4.

使用这个页面可以查看在该应用服务器实例上运行的最活跃的 25 个 OC4J 应用程序。该页面有助于快速了解最活跃的应用程序以及使用系统资源最多的应用程序。单击 Petstore 应用程序,更详细地了解其性能和使用情况。

5.

使用这个页面可以监视应用程序的性能。这个页面上显示有一些响应性能图表。您可以单击每个图表查看量度详细信息。从 Application: Performance 页面,您可以导航至企业管理器的其他页面,这有助于您完成给定的任务。该部分包含相关应用程序性能信息的链接:重要的 servlet、重要的 JSP 和重要的 EJB 方法。单击页面底部的 Top JSPs 链接。

6.

使用这个页面可以查看重要的 JSP(那些请求量最大或处理速度最慢的 JSP)。从这个页面可以看到这样的 JSP:

  • 处理请求数量最多
  • 从来没有被访问过
  • 处理请求的平均时间最长

可对重要的 EJB 方法和重要的 Servlet 做同样的分析。单击 Application Servers 选项卡。

7.

单击列表中的应用服务器 10.1.0.3 目标 as1013.stacc04.us.oracle.com 查看 JVM 量度。查看高级 JVM 量度,获得详细的内存和垃圾回收量度。只有 Oracle 应用服务器 10.1.3 或更高版本才支持以上操作。

8.

单击 OC4J_edge OC4J 组件。

9.

单击 Performance 属性页面。

10.

单击 Performance Links 部分中的 JVM Metrics 链接。

11.

单击第一个 JVM ID。

12.

使用 OC4J JVM Performance 页面监视 OC4J JVM 实例的性能。Resource Usage 部分包含显示该 OC4J JVM 实例使用情况数据的图表。JDBC Usage 部分包含显示该 OC4J JVM 实例 JDBC 信息的图表。

Response 部分包含显示该 OC4J JVM 实例的 servlet、JSP 以及 EJB 的响应量度信息。Memory Pools 表提供有关内存池的量度信息。它提供不同内存池的名称,而且针对每个内存池,提供从 JVM 启动至今的内存使用量和最大内存使用量。Garbage Collectors 表提供有关垃圾回收器的量度信息。它提供不同垃圾回收器的名称,每个垃圾回收器所拥有的回收数量以及每个垃圾回收器完成回收过程所用的总时间。



返回主题列表

在本教程中,您学习了如何:

返回主题列表

有关本 OBE 教程的问题,请在 OBE 论坛上发布查询。

返回主题列表

将鼠标置于该图标上可以隐藏所有的屏幕截图。