升级到Sharepoint 2013后页面打开速度慢

这个问题现在有了一些新的发现。

首先,我找到了重现客户那里出现的那个复杂SQL语句的方法。这个现象其实是这样的:

  1. 当WebApplication的“List View Threshold” 数量大于 文档库中文件个数的时候,如果是非管理员的用户打开文档库,就会出现那样的SQL语句。
  2. 当“List View Threshold”数量小于文档库中文件个数的时候,如果是非管理员的用户打开文档库,会得到一个警告说文档库无法打开。而如果是管理员,就可以打开,而且SharePoint会使用另一个比较适合大数量的SQL语句(但是在数据量小的时候反而不如原来那个语句)来查询。

所以客户那里出现那个SQL 语句的原因是 “List View Threshold“调整得太大。而”List View Threshold”调大的原因,是为了让普通用户能够打开文档库。

但是其实我们有更好的办法可以在不调大“List View Threshold“(也就避免了SharePoint使用适合小数据量大SQL语句操作大数据量的文档库,从而造成性能问题)的前提下,让普通用户也打开文档。

方法是执行下面的PowerShell 脚本。

$app=Get-SPWebApplication “http://<site url>

$app.UnthrottledPrivilegedOperationWindowEnabled=$true

$app.DailyUnthrottledPrivilegedOperationsDuration=24

$app.Update()

这个脚本的目的是修改SharePoint对于大List/Library(也就是list item数量操作 List View Threshold的list )操作的一个开关。SharePoint 2013可以规定一天中某些时段允许普通用户打开大List。默认是不允许的,目的是为了整个系统的Scalability。但是在客户的这个环境中,访问这些大文档库是必须的,所以我们可以修改为一天中24个小时都能够让普通用户访问大list。

这样List View Threshold不再是限制用户访问的一个阈值,而是SQL语句优化的一个阈值。通常List View Threshold 设置5,000是比较合适的。客户那里有约30,000个文档,所以肯定会使用优化的语句。

下面的PowerShell脚本可以比较方便地修改这个值。

$app=Get-SPWebApplication “http://<site url>

$app.MaxItemsPerThrottledOperation=5000

$app.Update()

遗憾的是SharePoint这些比较高级的调优功能(应该说是设计很巧妙的),缺乏文档说明。所以很少有人知道。MSDN有关于这两些设置的字面解释,但是没有给出生动的范例来说明其用途。我们只能够通过程序的调试,从源代码中看出这些设置的实际用途。

https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebapplication.unthrottledprivilegedoperationwindowenabled(v=office.15).aspx

https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebapplication.dailyunthrottledprivilegedoperationsduration(v=office.15).aspx

https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebapplication.maxitemsperthrottledoperation(v=office.15).aspx

时间: 2024-12-29 06:43:29

升级到Sharepoint 2013后页面打开速度慢的相关文章

SharePoint 2010升级到sharePoint 2013后,人员失去对网站的权限的原因及解决方法。The reason and solution for permission lost after the upgrading

昨天碰到了一个问题,一个网站在从SharePoint 2010升级到SharePoint 2013后,人员都不能登录了,必须重加赋权,人员才能登录,这样非常麻烦. 原因:是认证方式的问题.在SharePoint 2010中,通过管理中心新建web application的时候,就会发现提供了两种不同的认证方式,第一种是classic auth(也就是我们通俗的称为windows 认证,其实这种叫法也不全面),另一种是claim base auth. 而当时claim base的认证方式微软还没有

Status: Checked in and viewable by authorized users 出现在sharepoint 2013 home 页面

点击home页面上方的publish-> publishing->publish Status: Checked in and viewable by authorized users 出现在sharepoint 2013 home 页面

SharePoint 2013 单一页面赋设计权限

本文介绍SharePoint的使用中,断开单一页面权限,给用户编辑权限以及操作中遇到的问题,希望给相关需要的人一个参考. 1.首先进入页面库,找到我们的页面,进入共享,如下图: 2.在弹出的窗口中选择高级,如下图: 3.在进入权限编辑页面,首先断开当前页面的权限继承,如下图: 4.然后勾选所有继承的权限,删除,如下图: 5.而后点击Grant Permission,也就是授权,如下图: 6.按照我的理解,该用户对站点有访问权限,对单独页面具有编辑权限,就可以个性化该页面,但是添加一些WebPar

TroubleShoot: SharePoint 2013: ExecuteOrDelayUntilScriptLoaded 页面发布后不执行的问题

SharePoint 2010 中的ExecuteOrDelayUntilScriptLoaded,在2013 中使用时没有效果的问题. Example: SharePoint 2013 Code: SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady); function sharePointReady() {    alert("Ready"); } SharePoint 2010 Code: Execute

sharepoint 2007 升级到 sharepoint 2013

从moss 2007不能直接升级到moss2013,必须要先升级到moss2010,再升级到moss2013才可以. 一.需要将moss 2007打到sp2补丁(如果已经打过补丁,可以跳过此步骤) 如果还没有打sp1补丁,需要先打sp1补丁,然后再打sp2补丁.打完sp2后,sharepoint的版本号是12.0.0.6421,未打任何补丁之前的版本号是4518或者更小. 按照如下顺序打补丁.如果不想在生产环境上动刀,那么就搭一个虚拟机吧.moss2007环境的搭建可以参照这个:http://w

提升网站页面打开速度的12个建议

我们知道用户都喜欢浏览速度快的网站,不喜欢花费太多的时间等待网页的打开,等待的时间过长,会让用户失去耐心,甚至烦躁时会直接关闭网页,这样就会失去一些潜在的客户了. 其次,从SEO的角度来说,关键字的排名与网页的打开速度也有关系,Google的Web搜索团队曾在官方博客上宣布,将把网站的速度作为PR(PageRank)算法的一个因子,在所有因素都相等的情况下,速度快的网站将排在速度慢的网站前面.同时指出很多网站都没有利用最佳的页面优化技术,页面加载速度都存在很大缺陷.那么,我们该如何补救并提高网站

sharepoint 2013 使用outlook 打开sharepoint 任务失败

使用outlook 2010打开失败时可以检查下面几点: Applies To: Workflow Conductor 2.1 and higher SharePoint Server 2010 and Microsoft Office SharePoint Server 2007 Microsoft Outlook 2007 and Microsoft Outlook 2010 In Workflow Conductor 2.1 and higher, e-mail notifications

Asp.net项目因Session阻塞导致页面打开速度变慢

发现罪魁祸首是Session阻塞造成的.默认情况下session状态是“可写状态”(EnableSessionState=”true”),即当用户打开任何一个页面时,该页面的Session就会持有一个写锁定,写锁定会阻塞所有的读写锁定,故只有等该页面处理完毕后才释放对应的Session写锁定,在释放之前访问其他页面时将被阻塞住.详细描述如下: 当页面对Session具有可写功能(即页面有<%@ Page EnableSessionState="True" %>标记),此时直

Dynamics CRM 4.0升级Dynamics CRM 2013后全局Ribbon的修改

最近在为一个客户在Dynamics CRM 4.0到Dynamics CRM 2013的升级,升级之后发现原来在Dynamics CRM 4.0中定义的全局Ribbon按钮像牛皮癣一样,在每个实体页面的ISV Group下都显示着,但又不显示正确的中文按钮名,并且也没有正确的执行相应的功能,所以需要对这些Ribbon进行修改. 首先,在Dynamics CRM 4.0的[系统设置]-[自定义]-[导出自定义项]里选择[ISV配置]然后将其导出,然后在Dynamics CRM 2013的[系统设置