Sql Server报告服务(SSRS)2005操作超时问题

时间:2016-04-07 04:58:06

标签: sql-server reporting-services iis-6

我知道之前有人问过类似的问题...... 我正在使用SQL Server 2005,SSRS 2005安装在同一个盒子上。 (又名生产数据库,报告数据库/ TempDB,数据库引擎和SSRS都在同一个框中)。 我们在框中部署了大约200个报告。 SSRS / DB在W2k3 64位VM上运行。

现在问题......

有时,我们的用户几乎每天都会在“操作超时”状态下出现'错误(XML文档中的错误....)。起初我认为这是一个报告大小问题,但是当我尝试报告管理器URL(http://<> / reports)时,浏览器上没有任何内容。我唯一能做的就是回收报表服务器IIS池,它会再次运行。每当'操作超时'发生这种情况时,报表管理器URL将无法运行,我无法在IIS中找到任何日志以指示存在问题。

我在网上研究过,发现有些人把虚拟报告作为SQL服务器代理工作的一部分,每9分钟从9-5运行一次到“热身”。 SSRS。虚拟报告从一个非常小的表中在一行上与DB建立了一个小连接。操作超时问题似乎已经消失了95%的时间,但它仍然会发生。奇怪的是,当操作超时问题发生时,我注意到虚拟报告作业也已停止工作。在这种情况下,我不得不回收IIS池,并再次启动SQL服务器作业,然后SSRS将再次工作(直到下次出现相同的问题)

我从SQL服务器作业得到的错误是: System.IO.IOException:无法从传输连接读取数据:远程主机强制关闭现有连接

但是我对报表服务器上的IIS问题如何影响SSRS作业感到困惑。也许我走错了路,但这很奇怪。

到目前为止,我的观察结果是,如果报告管理器URL(http://<> / reports)显示出来,那么SSRS上出现了严重问题是一个不好的迹象。

我还添加了一项新任务,该任务使用PowerShell调用SSRS报告管理器http://<> /报告URL,以便预热' IIS,但它似乎并没有多大区别。

有人能指出我正确的方向吗?谢谢。 WM

1 个答案:

答案 0 :(得分:0)

过去,经过大量研究,我发现SSRS的内存分配是许多问题的根源。你可以试试这个。

将以下内容添加到rsreportserver.config文件中的<Service>节点

<WorkingSetMaximum>4000000</WorkingSetMaximum>

该文件通常位于c:\ program files \ Microsoft SQL Server \ MSRS11.iMIS \ Reporting Services \ ReportServer

这将设置报告的最大可用内存,并将最小内存设置为最大内存的60%。

https://msdn.microsoft.com/en-us/library/ms159206(v=sql.110).aspx