升级到Sharepoint 2013后页面打开速度慢
这个问题现在有了一些新的发现。
首先,我找到了重现客户那里出现的那个复杂SQL语句的方法。这个现象其实是这样的:
- 当WebApplication的“List View Threshold” 数量大于 文档库中文件个数的时候,如果是非管理员的用户打开文档库,就会出现那样的SQL语句。
- 当“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有关于这两些设置的字面解释,但是没有给出生动的范例来说明其用途。我们只能够通过程序的调试,从源代码中看出这些设置的实际用途。
升级到Sharepoint 2013后页面打开速度慢的更多相关文章
- SharePoint 2010升级到sharePoint 2013后,人员失去对网站的权限的原因及解决方法。The reason and solution for permission lost after the upgrading
昨天碰到了一个问题,一个网站在从SharePoint 2010升级到SharePoint 2013后,人员都不能登录了,必须重加赋权,人员才能登录,这样非常麻烦. 原因:是认证方式的问题.在Share ...
- 解决HTML加载时,外部js文件引用较多,影响页面打开速度问题
解决HTML加载时,外部js文件引用较多,影响页面打开速度问题 通常HTML文件在浏览器中加载时,浏览器都会按照<script>元素在页面中出现的先后顺序,对它们依次加载,一旦加载的j ...
- 解决加载WEB页面时,由于JS文件引用过多影响页面打开速度的问题
1.一般做法 一般我们会把所有的<script>元素都应该放在页面的<head>标签里,但由于是顺序加载,因此只有当所有JavaScript代码都被依次下载.解析和执行完之后, ...
- TroubleShoot: SharePoint 2013: ExecuteOrDelayUntilScriptLoaded 页面发布后不执行的问题
SharePoint 2010 中的ExecuteOrDelayUntilScriptLoaded,在2013 中使用时没有效果的问题. Example: SharePoint 2013 Code: ...
- Effective前端2---加快页面打开速度
1.避免head标签JS阻塞 所有放在head标签里的JS和CSS都会阻塞页面渲染.如果这些CSS和JS需要记在时间比较久,中间页面会存在一个空白期,严重影响到用户体验. 例如以下代码:在head标签 ...
- Asp.net项目因Session阻塞导致页面打开速度变慢
发现罪魁祸首是Session阻塞造成的.默认情况下session状态是“可写状态”(EnableSessionState=”true”),即当用户打开任何一个页面时,该页面的Session就会持有一个 ...
- SharePoint 2013 解惑 无法打开文件浏览器
你有时候会看到这东西谈出来,当你想像管理文件一样,管理SharePoint上资源的时候 意思是说,不能打开文件浏览器,请加入你的站点到信任站点,这个有两个问题,一个是IE设置,一个是WebClient ...
- Dynamics CRM 4.0升级Dynamics CRM 2013后全局Ribbon的修改
最近在为一个客户在Dynamics CRM 4.0到Dynamics CRM 2013的升级,升级之后发现原来在Dynamics CRM 4.0中定义的全局Ribbon按钮像牛皮癣一样,在每个实体页面 ...
- SharePoint 2013 单一页面赋设计权限
本文介绍SharePoint的使用中,断开单一页面权限,给用户编辑权限以及操作中遇到的问题,希望给相关需要的人一个参考. 1.首先进入页面库,找到我们的页面,进入共享,如下图: 2.在弹出的窗口中选择 ...
随机推荐
- IOS AudioServicesPlaySystemSound 后台锁屏播放
AudioServicesPlaySystemSound 想在锁屏后台播放报警提示音. 添加了UIBackgroundModes,audio,官方审核不通过! IOS的闹钟是怎么实现的,锁屏不能播放声 ...
- 1 数据库开发--MySQL介绍
1.数据库管理软件 C/S 并发.锁 :SQL语句.语法 基本管理和语法学习 一.介绍: mysql数据库管理软件: 套接字:服务端,客户端:客户端可访问服务端得数据 1.支持并发:操作得是共享得数据 ...
- UNITY 打APK是如何确定哪些资源有用哪些无用的
一切从build settings开始,它即是 构建列表,构建运行包当然从它开始. 1,只有在构建列表中的场景和场景引用资源才会被打进包里,其它资源除了2,3位置都不会被打包 2,streamming ...
- css继承和层叠
在前面介绍了如何利用文档结构和css选择器为元素应用各种丰富的样式,今天来好好聊聊css的层叠和继承,先说说概念. 继承:一个元素向其后代元素传递属性值所采用的机制,说的通俗点,就是元素的某些属性可以 ...
- freemaker在表格中遍历数据
Controller层如下所示: @RequestMapping(value = "/test", method = RequestMethod.GET) public Strin ...
- 4.jsp学习
1.创建 2.命名 3.utf-8防止乱码 5.导出WAR文件
- 20172325《Java程序设计》第一周学习总结
20172325<Java程序设计>第一周学习总结 教材学习内容总结 第一章 1.1软件质量 软件工程是一门关于高质量软件开发的技术和理论的学科. 高质量软件的特征 1.2 数据结构 软件 ...
- (2)-生成JSONObject的方法
生成JSONObject一般有两种方式,通过javabean或者map类型来生成.如下面的例子: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 ...
- FDMemTable三层提交数据总是不成功的原因
提交数据的代码如下: procedure TForm1.btnSaveClick(Sender: TObject);var LDeltas: TFDJSONDeltas;begin if FDMemT ...
- Python学习-11.Python中的类定义
Python是一门面向对象语言,那么作为面向对象的特征——类也是有的.值得注意的是Python中一切皆对象,并不像C#中为了性能考虑,int这些在Python中也是对象.(C#中int是结构体) 如何 ...