前几天一同事反映海外工厂A的SSRS报表比较慢,让我检查优化一下。于是我检查了下2015-07-13到2015-07-15 12:00这段时间报表的耗时记录

  1. USE [ReportServer];

  1.  

  1. GO 

  1.  

  1. SELECT  C.Name                         AS ReportName

  1.  

  1.        ,E.ReportID                     AS ReportID

  1.  

  1.        ,E.UserName                     AS UserName

  1.  

  1.        ,E.Format                       AS Format

  1.  

  1.        ,E.Parameters                   AS Parameters 

  1.  

  1.        ,E.TimeStart                    AS TimeStart

  1.  

  1.        ,E.TimeEnd                      AS TimeEnd

  1.  

  1.        ,E.TimeDataRetrieval*1.0/1000   AS TimeDataRetrieval

  1.  

  1.        ,E.TimeProcessing*1.0/1000      AS TimeProcessing

  1.  

  1.        ,E.TimeRendering*1.0/1000       AS TimeRendering

  1.  

  1.        ,DATEDIFF(SECOND, TimeStart, TimeEnd)

  1.  

  1.                                        AS  CostTime

  1.  

  1. FROM ReportServer.dbo.ExecutionLog E WITH(NOLOCK)

  1.  

  1. INNER JOIN ReportServer.dbo.Catalog C WITH(NOLOCK)ON E.ReportID = C.ItemID

  1.  

  1. WHERE E.TimeStart > CAST('2015-07-13 00:00' AS DATETIME)

  1.  

  1.   AND E.TimeStart <= CAST('2015-07-15 12:00' AS DATETIME)

  1.  

  1. ORDER BY TimeStart DESC

如上所示,我当时初步一看(没有细看),SSRS的速度还可以啊, 因为SSRS一般2~3秒的速度相当不错了,当时也很忙,我就直接回复该同事说SSRS性能没有问题,后面他邮件回复我说,SSRS的报表有时候很不正常,有时耗费比较长的时间,如上所示,有时候需要耗费10~12秒,严重影响了他那边的应用程序(应用程序调用SSRS);他还用我上面的脚本对比了海外工厂B的SSRS报表速度,发现那个工厂的SSRS报表的速度几乎为2秒,这才引起我的注意。从查询的记录来看,SSRS报表的SQL语句取数并没有耗费多少时间,报表基本上都耗费在TimeProcessing和TimeRending上,也就是说时间耗费在处理报表以及呈现报表上。但是为什么会这样不稳定呢? 刚开始我也有点纳闷!后来我想检查一下服务器的配置信息,但是又没有权限,同事找当地的系统管理员,系统管理员帮忙在他电脑用VNC登录服务器,然后他通过Lync共享桌面给我,检查的时候,突然发现一个雷死人的事情,该服务器CPU只分配了两核,对,你没有看错。如下截图所示,有时候CPU利用率就会突然彪增到100%, 持续一分钟左右又会降下来。而SSRS如果在那个时候调用的话,处理报表和呈现报表的时间就会突然增加。导致SSRS呈现报表需要非常长的时间。很明显该服务器在CPU资源上存在瓶颈,于是邮件通知当地系统管理员以及这边的几位老大关于这个问题。让海外工程的系统管理员增加CPU资源。

服务器增加了CPU资源,由原来的2核增加到4核后,我第二天去检查时,发现SSRS报表的速度明显有所改善,如下所示。这样的案例真是有点匪夷所思,我只能呵呵了。哎!

SSRS Reports 2008性能优化案例二的更多相关文章

  1. SSRS Reports 2008性能优化案例

    我们的一个Reporting Service服务上部署了比较多的SSRS报表,其中有一个系统的SSRS报表部署后,执行时间相对较长,加之供应商又在ASP.NET页面里面嵌套了Reporting Ser ...

  2. 老李案例分享:Weblogic性能优化案例

    老李案例分享:Weblogic性能优化案例 POPTEST的测试技术交流qq群:450192312 网站应用首页大小在130K左右,在之前的测试过程中,其百用户并发的平均响应能力在6.5秒,性能优化后 ...

  3. SQL性能优化案例分析

    这段时间做一个SQL性能优化的案例分析, 整理了一下过往的案例,发现一个比较有意思的,拿出来给大家分享. 这个项目是我在项目开展2期的时候才加入的, 之前一期是个金融内部信息门户, 里面有个功能是收集 ...

  4. Android性能优化案例研究

    译 者前言: 这是Google的Android开发工程师Romain Guy刊登在个人Blog上的一篇文章.Romain Guy 作为Android图形渲染和系统优化的专家,是Android 4.1中 ...

  5. js-jQuery性能优化(二)

    5.数组方式使用jQuery对象 使用jQuery选择器获取结果是一个jQuery对象.然而,jQuery类库会让你感觉正在使用一个定义了索引和长度的数组.在性能方面,建议使用简单的for或者whil ...

  6. 详解MySQL性能优化(二)

    http://www.jb51.net/article/70530.htm 七.MySQL数据库Schema设计的性能优化高效的模型设计 适度冗余-让Query尽两减少Join 大字段垂直分拆-sum ...

  7. 浅谈前端性能优化(二)——对HTTP传输进行压缩

    1.前端性能优化的一点: 对js.css.图片等进行压缩,尽可能减小文件的大小,减少文件下载的时间,从而减少网页响应的时间. 2.前端性能优化的另一点: 对HTTP传输进行压缩,即在js,css.图片 ...

  8. mysql的性能优化案例

    在一次项目实现中,以前写了个程序,将在txt文件中的电话号码和对应的类型往数据库中插入,小数据量的情况下,用个数组遍历循环的方式,很容易解决,但是当数据量一下 但是,几十万个电话一次性插入,就变得耗时 ...

  9. 云时代架构阅读笔记二——Java性能优化(二)

    承接上文Java性能优化(一)https://www.cnblogs.com/guo-xu/p/11019267.html 4)尽量确定StringBuffer的容量 在说和这个标题相关之前,先说一下 ...

随机推荐

  1. Project Server 2010 配置详解

    应公司要求,需要加强对项目的管理.安排我学习一下微软的Project是如何进行项目管理的,并且在公司服务器上搭建出这样的一个项目管理工具.可以通过浏览器就可以访问.我因为用的单机是Project Pr ...

  2. commons-lang包中我们常用的类的作用

    commons-lang包中对我们有用的类主要有: 1.StringUtils 该类主要提供对字符串的操作,对null是安全的,主要提供了字符串查找,替换,分割,去空白,去掉非法字符等等操作 2.Ob ...

  3. 在Mac上使用Visual Studio Code开发/调试.NET Core代码

    .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今天抽空研究了下在Mac下如何使用VS Code来开发.NET Core程序,并且调 ...

  4. IIS8 添加配置 WCF服务

    今天在Windows8.1 操作系统部署了半天的WCF 一直老是在报错.在这里做个记录 防止下次忘记 在网上查了半天.终于知道原来IIS8不支持WCF服务SVC的请求.所以必须要给IIS8添加WCF服 ...

  5. 趣味python编程之经典俄罗斯方块

    国庆期间闲不住,用python把经典俄罗斯方块实现了一遍,找到了些儿时的乐趣.因此突发奇想,打算用python写点经典又确实有趣的小程序形成系列.正统编程之余也给自己找点儿乐趣,换个角度写程序. 原计 ...

  6. 【C#公共帮助类】ZipHelper 压缩和解压帮助类,经过实战总结出来的代码

    关于本文档的说明 本文档基于ICSharpCode.SharpZipLib.dll的封装,常用的解压和压缩方法都已经涵盖在内,都是经过项目实战积累下来的 欢迎传播分享,必须保持原作者的信息,但禁止将该 ...

  7. bzoj1191--匈牙利算法

    这道题一看就是求二分图最大匹配,不过需要注意的是答案需要前面所有题目都能答对,因为这里WA了无数次...... #include<iostream> #include<cstdio& ...

  8. linux 安装rz sz命令

    wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz tar zxvf lrzsz-0.12.20.tar.gz cd lrzsz-0.1 ...

  9. J2EE的13种核心技术

    一.JDBC(Java Database Connectivity) JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据库 ...

  10. 【工匠大道】将项目同时托管到Github和Git@OSC

    原文地址 摘要: Github是最大的git代码托管平台,​GIT@OSC是国内最大的git代码托管平台,支持免费私有库,支持SVN操作,用户众多.很多用户需要同时将代码托管到两个平台,这篇文章的主要 ...