Reporting Services 占用内存过高问题

收到告警sqlserver服务器内存使用率过高,登录检查发现Reporting Services 占用内存超过13G,检查DB中正在执行的sql并没有发现ReportServer DB相关sql,业务方也说没有查到Reporting Services当前在执行什么。重启Reporting Services服务后故障恢复,查了下网上文章相关问题的分析和调整方法。

 

一、 查询占用内存最高的Reporting Services信息

Select  Top 10 *
From    ReportServer.dbo.ExecutionLog2 el
Outer Apply (
        Select  Sum(
                    Coalesce(c.value('Pagination[1]', 'int'), 0) +
                    Coalesce(c.value('Rendering[1]', 'int'), 0) +
                    Coalesce(c.value('Processing[1]', 'int'), 0)) / 1024.0 As MemoryUsageMB
        From    ReportServer.dbo.ExecutionLog2 el2
        Cross Apply
                el2.AdditionalInfo.nodes('AdditionalInfo/EstimatedMemoryUsageKB') As b(c)
        Where   el.TimeStart Between el2.TimeStart and el2.TimeEnd
        Or      el.TimeEnd Between el2.TimeStart And el2.TimeEnd
        ) a
Order By MemoryUsageMB Desc;

 

二、 限制Reporting Services最大内存

在RSReportServer.config配置文件在可以限制Reporting Services最大内存,文件位置在

C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer

MSRS13.MSSQLSERVER目录根据实际sqlserver版本而定。

备份然后编辑文件,搜索找到以下部分:MemoryThreshold

添加 <WorkingSetMaximum>1000000</WorkingSetMaximum>(1000000即1G),重启Reporting Services服务

 

参考

https://www.codykonior.com/2015/10/18/a-cool-way-to-check-reporting-services-memory-usage/

https://docs.microsoft.com/zh-cn/sql/reporting-services/report-server/rsreportserver-config-configuration-file?view=sql-server-ver15

https://docs.microsoft.com/zh-cn/sql/reporting-services/report-server/configure-available-memory-for-report-server-applications?view=sql-server-ver15

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hehuyi_In

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值