SSRS在Visual Studio中报告速度快但在浏览器中报告速度慢

时间:2016-11-14 22:26:39

标签: performance reporting-services

我有一个在TOAD中运行速度非常快的Oracle查询。此外,在Visual Studio中,使用报表进行设置,一切都运行得非常快。但是在部署到SSRS站点后,使用相同的数据源,报告需要很长时间才能加载。

有谁知道为什么或如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在SSRS中,运行报告时记录了三次:数据检索时间,处理时间和渲染时间。除此之外,报告的输出必须通过网络发送到您的浏览器并在那里呈现以供显示。

首先,使用以下查询验证SSRS中的时间是否符合预期:

SELECT 
    ReportPath,
    RequestType,
    TimeDataRetrieval,
    TimeProcessing,
    TimeRendering
FROM 
    [ReportServer].[dbo].[ExecutionLog2] with (nolock)
WHERE
    ReportPath =  '/whatever/report'

即使数据检索时间很短,SSRS也可能需要很长时间才能生成报告。例如,向子报告添加大量钻取会增加大量额外输出。确定此问题的最简单方法是将浏览器中生成的报告导出为MHTML。您可能会对输出的大小感到惊讶。这是Visual Studio与浏览器具有非常不同性能的一个领域。

显然,通过慢速网络传输大型报告会增加渲染时间(从用户的角度来看)。在我们的组织中,这种传输可以从额外的半秒增加穿越城镇到额外的20秒穿过大西洋。如果没有工具,这有点难以精确测量,但经验测量应该给你一个足够好的答案。

最后,还有浏览器本身。 Chrome在渲染SSRS报告方面比IE快很多。如果您确实使用IE,请检查兼容性视图设置 - SSRS应该更快关闭。同样在IE中,您可能想要切换加速图形的设置。在我们的组织中,有些用户会看到更好的性能,有些用户会看到更好的性能。

相关问题