0

我正在使用 SSRS 报告进行负载测试,并且对它越来越失望。我需要专家意见是否有办法提高性能。

环境设置:

  1. SSRS Report 调用从具有 5000 行的表中选择的存储过程,运行时间为 3 毫秒。
  2. 基于输入参数的 C# 应用程序创建线程并并行调用 SSRS 报告。
  3. SSRS 通过POST对 URL 的请求在一个 NT 用户下访问。

统计:

  • MSSM Studio 中的存储过程运行 3 毫秒
  • IE 中的 SSRS 报告运行 50 毫秒
  • 具有单线程的 C# 应用程序在 157 - 239 毫秒内返回结果
  • 同一报告的 4 个线程平均 500 毫秒
  • 8 个线程:同一报告需要 800 毫秒。
  • 16 个线程:同一份报告需要 1300 毫秒。

是否有任何配置或设置可以更改,以便 SSRS 更好地处理并发调用?

4

1 回答 1

1

显然,RS 服务每个 CPU 只有 2 个线程可用。我在网上的各种论坛上看到过这个数字,这里是一个

您可能会发现您尝试启动的线程实际上阻碍了性能,有效地“重载”了 RS 线程。您可以检查您的日志文件,以查看线程是否根据 this受到压力,并声明您可以在日志中预期以下类型的错误:

警告:线程池压力。将当前线程用于工作项

也许您可以查看将您正在创建的最大并发线程数与number of CPUs the RS service has access to * 2

于 2012-10-26T06:41:50.023 回答