有没有一个工具可以对 PLSQL 进行负载测试

2024-03-09

我知道 utplsql 用于单元测试,有没有办法可以在循环中使用它来加载测试我的存储过程?

我不想使用 JMeter 或通过任何 JDBC 驱动程序 - 只是想分析普通存储过程的性能


我认为单元测试工具不是正确的方法,因为您并没有真正对功能做出断言。通过负载测试,您想知道一个过程如何在处理大量数据的情况下运行,或者是否被调用很多次。

因此,您可能希望在循环中或针对大表运行它,并使用分析器来查找引导程序。如果你使用的是 11g,你应该检查一下内置的分层分析器 http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28424/adfns_profiler.htm#ADFNS023.

像这样的东西:

begin
    DBMS_HPROF.START_PROFILING (
       location    => 'PROF_DATA_FILE_DIR'
       , filename    => 'HPROF_RUN1_20111109'
       );

    some_pkg.generate_lots_of_work(p_id => 1234);

    DBMS_HPROF.STOP_PROFILING;

end;
/

或者在循环中:

begin
    DBMS_HPROF.START_PROFILING (
       location    => 'PROF_DATA_FILE_DIR'
       , filename    => 'HPROF_RUN2_20111109'
       );

    for i in 1..1000
    loop
        some_pkg.do_this(p_num => i);
    end loop;

    DBMS_HPROF.STOP_PROFILING;

end;
/

显然,这不会帮助您生成用于负载测试的数据块。这始终是最难的部分:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有一个工具可以对 PLSQL 进行负载测试 的相关文章

随机推荐