编者注:这篇博客文章来自Windows Azure SQL Reporting 项目经理David Magar。
尽管人们倾向于采用一个现有的ReportingServices项目,并且把它放置到云上,你确实不应该这样做。在本地服务器运行良好的报表部署到SQL Reporting报告服务器也许没有本地服务器上同样的性能。
很幸运,3个简单的修改就可以产生更快的运行报告。这篇博客文章将详细讲述每一个修改。
最佳做法#1: 重新配置 ReportViewer 控件
如果你在ASP.Net页或者Windows forms应用程序中使用ReportViewer 控件(RVC),你需要更改以下的配置:
1.通过调用:WebRequest.DefaultWebProxy =
null, 在您的应用程序初始化中禁用默认的代理服务器;
2. 调用SetParameters 和not SetParameter,同时设置所有 Windows Azure SQL 报告参数。设置参数导致调用在Windows Azure SQL Database中的Windows Azure SQL Reporting数据层。通过发出一个调用而不是几个,对减少读\写周期有很多帮助。
3.通过配置应用程序的RVC使用cookie进行身份验证,而不用进行日志调用。这将强制你的用户或者应用程序登陆一次,稍后返回一个cookie为了更快的呈现。请记住,Report Server仅仅允许在60分钟内创建的cookie,因此当设计你的应用程序的时候,你必须把这个cookie应用到账户。
最佳做法 #2: Co-locate Web 应用程序和在相同数据中心的数据库。
ReportViewer控件和报表服务器频繁通信。这种行为不可避免,但是通过在同一个数据中心中部署你的Windows Azure应用程序和报表服务器,你可以最小化成本。
当选择在哪里部署你的Windows AzureSQL数据库时,这种注意事项同样适用。发送到SQL Database的每一个查询都带有一定量的系统花费。在页面呈现时身份验证、 授权、 处理请求,等等所有的这些操作有助于在初始连接之间延迟。将数据库放在同一个数据中心,采取这种行为其他应用程序减少了时间,节约了呈现时间并且产生更好的性能。
通过阅读来自我们团队David Bahat的博客文章,您可以检测到您的数据库、
应用程序和报表服务器的位置,以及了解为每个报表呈现引入数据确切它花费多少时间。
最佳做法 #3: 编写高效的查询
当创作报告时,设置可以仅仅带来报告可视化需要的数据(当设计查询时,尤其避免“Select *” SQL声明类型)。这种最佳的做法确保你的报告最快的呈现。
最后,我希望这3个建议有助于解决一些与应用程序和SQL Reporting有关的性能问题。
我期待您的反馈和在下面评论。
真诚地,
David Magar
Windows Azure SQL Reporting程序经理
本文翻译自:http://blogs.msdn.com/b/windowsazure/archive/2012/12/07/aa.aspx
分享到:
相关推荐
Azure SQL Data Warehouse
全书共12章,内容包括云计算概论、云计算技术概观、初探Windows Azure、Windows Azure应用程序开发基础、Windows Azure应用程序开发:Table存储服务、Windows Azure应用程序开发:BLOB存储服务、Windows Azure应用...
微软WindowsAzure云应用开发实践整理.pdf
Windows Azure
使用windows Azure开发的第一个云程序,最简单的一个云程序。
第3 章到第7 章,通过完整的示例项目系统地介绍windows azure(计算服务、存储服务和部署调试)、sql azure 和windows azure appfabric。最后一章介绍了windows azure平台的高级应用,包括更加深入的功能点、如何在...
熟悉SQL Server的开发人员和DBA通过将他们已有的知识与Azure开发和管理的新功能相结合,应该可以迅速地掌握它的使用方法。在本次的技术手册中,我们将为您奉上最完整的SQL Azure教程,从入门到深层次了解微软云...
第3章到第7章,通过完整的示例项目系统地介绍Windows Azure(计算服务、存储服务和部署调试)、SQL Azure 和Windows Azure AppFabric。最后一章介绍了Windows Azure平台的高级应用,包括更加深入的功能点、如何在项目...
Windows Azure 概述
sql database for windows azure
简要描述Windows Azure最新的功能、特色和主要的服务
Build, deploy and manage cloud solutions using combination of Windows Azure Pack, System Center and Hyper-V Impress your peers at work by learning to build applications that can leverage the cloud to ...
Windows Azure 是微软的云平台,可以提供广泛服务您可以通过它 搭建、部署并管理解决方案,用于实现您可以想象的几乎任何目标。换言之, Windows Azure 是拥有无限可能的世界。无论您是需要运行服务器工作负载的...
Your hands-on guide to Azure SQL Database fundamentals Expand your expertise--and teach yourself the fundamentals of Microsoft Azure SQL Database. If you have previous programming experience but are ...
《Windows Azure从入门到精通》针对微软的云计算平台windows azure,循序渐进地介绍了如何构建和管理云端的可扩展应用,一次一个知识点,同时辅之以适当的练习,可帮助读者轻松掌握基本的编程技能,掌握windows ...
Windows Azure入门教学系列
windows azure
70-583 PRO: Windows Azure 题库
Windows Azure使用入门 第二课:建立自己的网站.pdf