2012-10-23 103 views
0

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

环境设置:

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

统计:

    在MSSM工作室
  • 存储过程运行3毫秒
  • 在IE
  • SSRS报表运行50ms的
  • 与单线程C#应用程序取回结果在157 - 239毫秒
  • 4个线程对于同一报告平均500毫秒
  • 8个线程:同一报告800毫秒。
  • 16个线程:相同报告为1300毫秒。

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

+0

最大并发线程数是否有任何的SSRS缓存选项可用于你?缓存报告将是最快的,但如果你不能这样做,缓存数据集可能会有所帮助。 –

+0

缓存需要同时运行,它看起来像是有其他问题。 – Farfarak

回答

1

显然,RS服务每个CPU只有2个线程可用。我看到这个数字在网络上的各种论坛中被吹捧为here is one

您可能会发现您尝试启动的线程实际上阻碍了性能,导致RS线程“超载”。您可以检查日志文件,看看是否线程正在强调according to this,并指出你可以期望在日志中以下类型的错误:

警告:线程池的压力。使用当前线程工作项

也许你可以看看匹配您创建的number of CPUs the RS service has access to * 2