博客链接:https://blog.51cto.com/u_13637423
近期遇到一个客户,SharePoint Server 2019 Performance不够理想,希望能提高end user访问和同时协作的performance,跟客户聊完SharePoint infra相关的软、硬件配置后,给了相关的优化建议,这里整理一下分享给大家,希望对大家日后的SharePoint Server的管理提供相关的帮助。
首先我们来看一下衡量SQL Server性能的关键性3要素:
· SQL Server的Disk I/O (建议SSD 硬盘存储)
· Memory
· CPU
其中,SharePoint Farm中SQL Server 所需要Memory主要取决于Content Database大小,DB越大,所需要的内存就越高,建议:
· 高达2TB的数据,Memory是32GB
· 高达5TB的数据,Memory是64GB
· 超过5TB的数据,Memory大于64GB
SharePoint 的SQL Server的网络要求:
· SQL Server要求至少1Gbps的网络连接,并且延迟不应大于1ms
· 建议SharePoint服务器具有两个network adapter:一个用于处理用户流量,另一个用于处理与运行SQL Server的数据库服务器的通信
SharePoint Content Database,它是一个内容数据库,用于存储Web Application的一个或者多个Site Collections的内容。
· 默认的情况下数据库名称为“WSS_Content”,Recovery model是full
· 强烈建议在创建Content Database时使用Windows身份验证
· 每个服务器场支持的SharePoint Content Database限制为500个
· SharePoint Server 2019 为每个服务器场的所有content database提供100 TB的数据存储
· 一般推荐每个DB的存储额度为200 GB,每个Site Collections存储不超过100 GB,每个DB不要创建超过5000个Site Collections
除此之外,还需要考虑SharePoint端相关的Cache:启用Blob Cache和Object Cache。
· Blob Cache是提高SharePoint Performance的常用方法
· Object Cache,可以提高SharePoint网站上用户的性能
启用Blob Cache
Blob Cache,它将二进制的大型Objects(Blob)存储在Web Front End Server上,比如经常使用的图像、音频和视频文件以及其他被用来显示网页的文件,比如 .css 和 .js 文件,以避免SQL和Web Front End Server之间的往返访问,从而减少SQL Server的负载。
BLOB Cache配置在针对每一个 Web 应用程序的 web.config 文件中,默认情况下,不启用 BLOB 缓Cache,若启用 BLOB Cache来获得该Cache提供的性能优势,请参阅Configure cache settings for a web application in SharePoint Server进行配置。
启用Object Cache
通过在Web Front End Server的内存中存储对象(例如列表和库)、网站设置和页面布局,减少 Web 服务器和 SQL 数据库之间的流量,因此,需要这些项目的页面能够快速呈现,从而提高了向客户端浏览器提供页面的速度。
Object Cache设置可在网站集级别由网站集管理员在用户界面中配置,并在默认情况下启用, 最大缓存大小可在Web Front End Server上的 Web 应用级别配置,以限制缓存将应用于所有网站集的内存的最大值,有关详细信息,请参阅Configure object cache settings。
上述是优化SharePoint Performance的Key Points,希望对大家日后管理SharePoint On Premise提供帮助,若大家在实际管理中,遇到其他Performance的问题,欢迎线下讨论。