2012-10-25 32 views
3

我有两个测试环境。我的应用程序在秒数上表现最差。我怀疑这是因为第一个系统使用的数据库运行在更好的硬件上(更多的CPU,更快的连接)。我想以某种方式验证我的说法。有没有什么工具可以帮助我呢?如果它有帮助,我使用Oracle 11g,我的应用程序使用Hibernate连接到数据库。(Oracle)数据库测试性能/连接速度

请注意,我对分析我的模式不感兴趣。我想比较两台不同机器上相同数据库(含义模式+数据)的速度。

如果您有兴趣,为什么我怀疑数据库是问题:我在这两种环境的测试期间对我的应用程序进行了描述。在第二个测试环境中,负责连接数据库的方法(即org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery())正在使用更多的CPU时间。

回答

2

回答这个问题:我相信你会用JMeter来描述这两个环境,并从你运行的测试中获得全面的数据。 VisualVM也会很有帮助,但这取决于您需要的数据类型以及您需要如何呈现(或分析)它。

但是至于一般问题,就是两个数据库上的数据恰好是一样吗?因为如果情况并非如此,有些可能性是开放的 - 您的交易可能取决于被另一个进程锁定的数据(因此,您需要查看您的交易以及他们使用的交易隔离)。

+0

本人无法给出更全面的答案 – amphibient

+0

谢谢! JMeter就是我正在寻找的东西。 –