
如果您开发了一个运行在 Oracle 应用服务器 (OracleAS) 或 Oracle Containers for J EE (OC J) 上的 Java 应用程序 那么您可以使用 Oracle 的动态监控服务 (DMS) 来测量您的应用程序的性能 本文分几个简单的步骤说明了如何准备好您的应用程序 以进行性能测量 并如何读取结果 Oracle DMS 提供了一组 Java 和 C API 来为 OracleAS 和其它的 Oracle 产品测量和报告性能量度 状态 信息和诊断信息 Oracle 产品调用 DMS 函数库例程来计算量度 并把它们输出到 Oracle 企业管理器中 有关监控和优化 OracleAS 及其组件的性能的详细信息 请参见 Oracle Application Server g 性能指南 DMS 测量 API 小 简单而高效 为了创建定制的量度 开发人员在事件发生时 重要的时间段开始和结束时 或者当预先计算的性能量度改变了它们的值时通知 DMS 然后 DMS 将量度发送到 Oracle 企业管理器 将它们转储到文本文件中 或者进行格式化 以适合 web 浏览器 下面进行简要介绍 首先 您将需要确定您要测量应用程序的动作(可能以某种层次表示 例如 读时间 和 写时间 可以结合构成 总时间 ) 然后创建一个准备这些定时 事件 的结构的专用 Java 类 然后在 Java 应用程序的相关位置上 调用这个专用类中的方法来启动和停止相关的定时器 然后运行应用程序(运行多次以采集实际的平均值) 并通过一个专门的 URL 来查看时间测量的结果 下面更详细地介绍了这个过程中的步骤 第 步 确定您想要测量的应用程序部分 下面是根据我自己经验而编写的示例 为了进行概念验证 我的小组需要显示 Java 应用程序中的一个特定序列的步骤可以在 秒内执行 我们想要测量总时间 以及每一个步骤花费多少时间(从而我们能够指出需要改进的地方) 我们想要测量以下步骤所花费的时间(三层的层次结构) 总时间 检索数据(不需部分求和) 读取数据库 写入文件 计算 计算的初始化 重复计算步骤 提交结果 图形表示 字母数字表示 这些测量必须在应用程序的每次运行中进行 以便您能够比较它们在不同情况下的值 并为每一个应用程序组件计算平均时间 就我们而言 输入参数之一是计算步骤的数目 因此我们运行了几次 每次执行不同数量的步骤 因此 我们能够指出哪些部分有一致的性能 以及如果我们增加步骤数 对于其它的部分需要增加多少时间 第 步 安装 dms jar 找到 dms jar(在 [OC J_HOME]\lib 或 [OracleAS_HOME]\lib 中) 并确保它在您的应用程序的类路径中(特别在开发环境中 因为如果您部署到 OracleAS 或 OC J 中 那么在部署环境中它将已经存在) 如果您使用 JDeveloper 那么您可以将 dms jar 作为一个资料库添加到 JDeveloper 项目设置中 以实现这一目的 为您的项目创建一个新的资料库 然后在它的类路径中为 dms jar 增加一个项目(指定到 dms jar 的完整路径) 第 步 创建类 PerformanceMeasurement 在您的 Java 应用程序中创建一个新的 Java 类 在该类中您可以准备好测量层次结构 列表 显示了一个准备第 步中说明的层次结构的示例类 这个示例使用 DMS PhaseEvent 感应器( 定时器 )来测量在代码的完整特定部分中所花费的时间 并且它使用 DMS Nouns( 树结构 )来在一个层次结构中组织 PhaseEvent 感应器 这种层次结构类似于文件系统中的目录结构 第 步 测量应用程序 现在 在应用程序中的适当位置开始和停止相应的定时器已非常容易(用 DMS 的术语 这称为 instrumenting ) 您所需要做就是初始化一个 PerformanceMeasurement 对象 然后将这个对象传递给需要控制这些定时器中的某一个启动和停止的 Java 例程 下面是一个示例代码段 // Initialize Performance Measurement objectp = new PerformanceMeasurement( MyApplication_ +numberOfSteps+ _steps );p start(p TOTAL);// And now the actual steps in the caseDataHandler getData(p);doCalculations(p);generateChart(p);您可以按您的需要频繁调用 p start 和 p stop 只要您确保对于某个定时器的每一次启动 *** 作 总存在对该定时器的停止 *** 作 例如 p start(p READING);// Load the Oracle JDBC driver and connect to the database p stop(p READING);p start(p WRITING);// Initialize output file p stop(p WRITING);p start(p READING);// Get first batch of data p stop(p READING);p start(p WRITING);// Write first batch of data p stop(p WRITING);记住您还必须手动启动和停止 Total 和 Subtotal 定时器 第 步 捕获一个页面在浏览器中完全显示的时刻 在我们的概念验证中 将在浏览器中显示图形和字母数字数据所需的时间包括在我们的测量中是必需的 我们的页面相当大 因此完全加载它要花一些时间 我们使用一个 Javascript 陷阱来捕获结束时间 Javascript 在客户机上执行 因此如果您将一段脚本放在页面的末尾 那么只有页面在客户机上完全加载时才执行 在那段脚本中 我们调用了另一个页面 该页面调用了一个 Java 方法来停止相应的定时器 下面是一个示例 JSP 代码段 <jsp:useBean id= myApplicationBean class= MyApplicationBean scope= session ><! Do all the calculation stuff first ><% myApplicationBean doSteps(); myApplicationBean p start(myApplicationBean p GRAPHICAL); %> show chart <% myApplicationBean p stop(myApplicationBean p GRAPHICAL); myApplicationBean p start(myApplicationBean p ALPHANUMERIC);%> show alphanumerical data <% myApplicationBean p stop(myApplicationBean p ALPHANUMERIC);%><script> window open( Stop jsp stop width= height= );</script></JSP:USEBEAN><JSP:USEBEAN class=MyApplicationBeanid=myApplicationBean scope= session >下面是 Stop jsp 的源代码 <%@ page contentType= text/;charset=windows %><jsp:useBean id= hopCalBean class= HopCalBean scope= session />Stop!!!!<% myApplicationBean stop(); %>myApplicationBean stop() 方法包含以下 Java 代码 / This method will be called after everything has been done /public void stop(){p stop(p PRESENTATION_TOTAL);p stop(p TOTAL);p writeLogFile( d://temp//MyApplicationPerformance log );} 第 步 运行应用程序 现在将经过测量的应用程序部署到 OracleAS 或 OC J 中 并运行它 DMS 将采集时间统计数据 如果您想比较几次运行的时间测量结果 请多次运行您的应用程序(可能用不同的变量 变量可以在初始化 PerformanceMeasurement 对象时放到运行名称中) 第 步 在浏览器中查看 DMS 输出 如果您编写了对 p writeLogFile 的调用 那么您可以查看该日志文件的内容 它包含原始的 DMS 数据 通过在应用服务器上调用一个特定的 URL 可以找到一种更加清晰的数据表示方法 用您的 Java 应用程序使用的应用服务器的主机名和端口号来替换 [host:port] 对于独立的 OC J 使用//[host:port]/dms /Spy 对于 OracleAS 使用//[host:port]/dmsoc j/Spy 您将看到如下页面educity cn/img_ / / / gif> 正如您所看到的 DMS 还收集 JDBC JVM 和 OC J 的统计数据 并且无需任何进一步的调整 关于内置性能量度的一个列表 请参见 Oracle Application Server g 性能指南的附录 A 要查看某种类别的详细信息 请单击左边框中的名称 educity cn/img_ / / / gif> 总结 如果您以一种结构化的方式安装了 DMS Nouns 和 DMS PhaseEvent Sensors(利用一个 PerformanceMeasurement 类) 那么利用 DMS 您可以容易地测量您的 Java 应用程序的性能 并且获得性能时间测量结果的一种易读的结构化输出 lishixinzhi/Article/program/Java/JSP/201311/19348
温度检测软件哪种好?天气越来越热,长时间玩电脑容易导致CPU温度过高,从而出现电脑死机等一系列问题,那么要如何查看CPU温度呢?下载一个CPU温度检测软件,就可以随时查看CPU温度了,当CPU温度过高时就可以采取一些降温措施。那么,CPU温度检测软件哪种好呢?下面小编给大家推荐十款CPU温度检测软件,大家可以参考各个软件的性能来进行抉择。
一、鲁大师
鲁大师
鲁大师是新一代的系统工具,它能轻松辨别电脑硬件真伪,保护电脑稳定运行,优化清理系统,提升电脑运行速度的免费软件。
鲁大师适合于各种品牌台式机、笔记本电脑、DIY兼容机,实时的关键性部件的监控预警,全面的电脑硬件信息,有效预防硬件故障,让您的电脑免受困扰。鲁大师帮你快速升级补丁,安全修复漏洞,远离黑屏困扰。更有硬件温度监测等带给你更稳定的电脑应用体验。
推荐下载:鲁大师
二、cpu-z
cpu-z
cpu-z 是一款家喻户晓的cpu检测软件,除了使用intel或amd自己的检测软件之外,我们平时使用最多的此类软件就数它了。它支持的cpu种类相当全面,软件的启动速度及检测速度都很快。另外,它还能检测主板和内存的相关信息,其中就有我们常用的内存双通道检测功能。
推荐下载:cpu-z
三、aida64
aida64
AIDA64是一款测试软硬件系统信息的工具,它可以详细的显示出PC每一个方面的信息。AIDA64不仅提供了诸如协助超频,硬件侦错,压力测试和传感器监测等多种功能,而且还可以对处理器,系统内存和磁盘驱动器的性能进行全面评估。AIDA64支持所有的32位和64位Microsoft Windows *** 作系统,包括对Windows 7和Windows Server 2008 R2的兼容。
推荐下载:aida64
四、prime95
prime95
Prime95是一款专门测试系统稳定的软件,在所有的烤机软件中,Prime95是公认的最残酷的一款。它把负荷高得有点离谱的工作量加载在CPU身 上,以此来考验CPU的承受能力。这一测试因其可以发现其他测试程序无法发现的稳定性问题而备受关注,更加被许多专业的计算机 OEM 制造商用来确定计算机的稳定性。
推荐下载:prime95
五、HWMonitor
HWMonitor
HWMonitor是 一款CPUID的新软件,似乎不满足CPU-Z的检测功能,这个软件具有实时监测的特性,而且继承了免安装的优良传统。通过传感器可以实时监测CPU的电压、温度、风扇转速,内存电压,主板南北桥温度、硬盘温度,显卡温度等。
推荐下载:HWMonitor
六、Core Temp
Core Temp
Core Temp是一款小巧精致、实用可靠的处理器内核温度识别工具,只有一个EXE可执行文件。它能直接读取Intel和AMD各种处理器的数字热敏传感器的信息,从而提供更精确的温度数值,而且能单独显示每个核心的情况。更适合应用在Intel的处理器上,在AMD上使用时,可能会因为和AMD的“Cool and Quiet”不兼容而引起电脑死机花屏。
推荐下载:Core Temp
七、SpeedFan
SpeedFan
SpeedFan 是一个监视电脑风扇速度及温度的软件,和即时显示芯片温度,可以根据芯片温度来设定不同的风扇速度,最新版中增加了 SMART 技术监控硬盘, 以及 FSB 频率调节功能。
推荐下载:speedfan
八、Real temp
电脑cpu温度检测的软件哪个最好用
Real temp
Real Temp是一款专为Intel处理器开发的温度检测工具,支持各种单核心、双核心、四核心型号。它根据每个核心内集成的数字热敏传感器(DTS)报告其温度,并同时给出和最高允许温度(TjMax)的距离,提醒你注意保持清凉。
推荐下载:Real temp
九、EVEREST
电脑cpu温度检测的软件哪个最好用
EVEREST
EVEREST Ultimate Edition 是一个测试软硬件系统信息的工具,everest 绿色版可以详细的显示出PC每一个方面的信息,支持上千种主板、上百种显卡以及CPU等设备的侦测。everest 绿色版还支持对并口/串口/USB这些PNP设备的检测。
推荐下载:everest
十、魔方温度监控
电脑cpu温度检测的软件哪个最好用
魔方温度监控
魔方温度监控软件是一款电脑温度检测软件。
以上就是关于利用 Oracle DMS 测量 Java 应用程序性能全部的内容,包括:利用 Oracle DMS 测量 Java 应用程序性能、什么软件可以检测CPU和显卡的温度和性能、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)