如何解决SharePoint和Telerik RadGrid Control的性能问题
| 我最初发布此问题是为了缩小SharePoint应用程序的运行缓慢问题。接受StriplingWarrior的回答后,我开始逐步了解他的建议。简而言之,我在SharePoint 2010 Server上托管的“应用程序页面”中有一个RadGrid。当分页时,RadGrid运行得很好。但是,一旦应用了过滤器,例如:给我包含\'doe \'的姓(使用Telerik \的内置过滤器机制),结果最多需要15秒才能返回。使用相同的数据集(约30,000条记录)在我的开发环境中不会发生这种情况。 这里有几点注意事项: 我的LINQ to sql表达式生成的sql很好。我使用LINQPad对其进行了跟踪,并将其放入Management Studio。那里没有什么复杂的事情。 我创建了一个空的ASP.NET 3.5 Web窗体应用程序,并移植了一个有问题的RadGrid。我将Web应用程序放在生产服务器上,您不知道...它运行得很好。过滤时没有性能问题。 因此,通过执行上述操作,我可以排除以下情况: 数据库优化问题。 SharePoint应用程序和数据库服务器之间的网络问题。 LINQ to sql优化问题。 从较高的角度看这种情况,您能想到我需要在SharePoint应用程序服务器上进行的其他工作还是要解决此问题?我在web.config中关闭了调试功能。 同样,这是我的原始问题,其中包含代码。谢谢。解决方法
我首先要确定花费的时间是15秒:
1.服务器端
2.客户端
您可以使用诸如Page Speed(http://code.google.com/intl/da-DK/speed/page-speed/)之类的浏览器插件来衡量页面的各个方面。如果在服务器端使用了15秒的大部分时间来呈现页面,则可以使用探查器工具或代码中的跟踪语句来缩小所花费的时间。
您的问题听起来有点像RadGrid处理过滤的问题。您说生成的SQL和数据库性能很好。过滤器表达式(例如doe)是否转换为SQL where子句?我怀疑网格从数据库中选择了所有记录,然后应用了过滤器。
伯恩
, SharePoint性能问题的发生主要是由于以下原因:
BLOB淹没了SQL Server
列表的数据库行程太多
如果使用以下几种智能技术,则可以大大提高SharePoint的性能:
外部化文件(BLOB)
缓存列表和BLOB
Microsoft Office SharePoint Server(MOSS)是一种非常受欢迎的产品,它通过内容管理和企业搜索,共享的业务流程以及跨边界的信息共享来提高组织的洞察力,从而提高了组织的洞察力。而且StorageEdge是一款非常出色的产品,可以增强/改善SharePoint性能。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。