在 SharePoint Server 中规划缓存和性能
适用于:2013 2016 2019 Subscription Edition SharePoint in Microsoft 365
SharePoint Server 提供基于磁盘的二进制大型对象 (BLOB) 缓冲,该缓冲可以减少数据库加载,同时为用户提升浏览器性能。 本文将介绍 BLOB 缓冲的内容,告知您如何使用它以及何时使用它,同时还列出规划使用该缓冲时需要注意的关键事项。 本文同时还介绍了何时使用比特率限制的信息,比特率限制是 Internet Information Services (IIS) 7.0 的扩展,当将视频作为管理 SharePoint Server 中数字资产的一部分时,它可以为用户改善视频的性能。 最后,本文还介绍了 SharePoint Server 中可用的其他类型的缓存,描述了上载文件大小限制的局限,而且还列出了为服务器上文件传输调节大小限制的注意事项。
有关如何启用 BLOB 缓存的信息,请参阅Configure cache settings for a web application in SharePoint Server。 有关管理数字资产的信息,请参阅在 SharePoint Server 2013 中规划数字资源库。
基于磁盘的 BLOB 缓存
本节介绍基于磁盘的 BLOB 缓存,提供有关如何通过 SharePoint Server 部署使用该缓存的信息。 本节还告诉如何决定何时使用 BLOB 缓存、在何处存储、如何启用以及如何配置缓存的大小来为用户获取最佳性能表现。
BLOB 缓存概述
基于磁盘的 BLOB 缓存控制二进制大型对象 (BLOB) 的缓存,比如经常使用的图像、音频和视频文件以及其他被用来显示网页的文件,比如 .css 和 .js 文件。 BLOB 缓存在前端 Web 服务器上启用,BLOB 缓存从数据库中检索 BLOB 文件并将它们存储在为用户提供服务的前端 Web 服务器上的目录中,从而提高了网站的性能。 这将减少网络通信量和数据库服务器上的负载。
BLOB 缓存还提供功能来支持为用户提供媒体文件。 其中一个功能就是支持比特范围的请求,允许用户在视频中选择一个偏后的点,然后立即开始重播。 另一个功能是分段缓存,即在播放一个大型视频文件开头的同时对文件的剩余部分进行缓存。 视频文件按小单位进行分段、检索,这样可以减少服务器前端和后端的负载。 管理员可以配置这些部分的大小。
BLOB 缓存还是使用图像呈现功能的前提条件。 图像呈现功能允许在一个发布网站的不同页面上显示一个图像的不同大小的版本。 创建一个图像呈现时,规定了使用了该图像呈现的所有图像的宽度和高度。 若要了解更多信息,请参阅 MSDN 库中的如何在 SharePoint 中管理图像呈现。
决定是否使用 BLOB 缓存
一旦启用,BLOB 缓存就会开始缓存各种图像、音频和视频文件以及 .css 和 .js 格式的文件。 管理员可以更改设置,添加或删除可以被缓存的文件类型的文件扩展名。 该功能可让您能缓存尽可能多的文件类型,或让您限制缓存特定类型的文件。 例如,如果您遇到面向 Internet 的门户附有只读权限的文件(例如 .doc 或 .pdf 文件),您可以指定缓存这些文件,这样就可以更快地为用户显示这些文件。 如果您拥有一个协作网站,该网站包含经常性更新的文件和媒体资产,您可以通过在缓存设置中只包含缓存音频或视频文件扩展名的方式来规定缓存仅存储该音频或视频类型。
在启用 BLOB 缓存之前,请仔细考虑计划使用它的方案。 如果站点将用于大量协作,则启用 BLOB 缓存可能会暂时影响站点的性能,而要缓存的文件将首先写入磁盘。 文件存储在缓存中后,站点性能将会提高,因此在决定是否启用缓存时,请考虑这一点。 根据以下条件来决定启用 BLOB 缓存:
如果一个发布网站的访问者大多是匿名或其中文件大多是静态内容,那么您可以启用 BLOB 缓存尽可能多的文件类型。
对于计划使用图像呈现功能的发布网站,您必须启用 BLOB 缓存。
对于包含大量只读媒体资产或仅更新一小部分媒体资产的其他站点,请仅为媒体文件启用 BLOB 缓存。
每个 Web 应用程序有一个 BLOB 缓存。 如果您准备在使用 BLOB 缓存的同时,使用预计将会很大的资产库,或是使用将接收大流量的网站,请考虑将包含该资产库的网站集转移到它自己的 Web 应用中,这样它就可以接收自己的 BLOB 缓存。 这可确保其他资产不会占用要分配给资产库中项的 BLOB 缓存中的空间。 它还将确保接收大量流量的站点不会阻止接收较少流量的其他站点从 BLOB 缓存中受益。
存储 BLOB 缓存
在启用 BLOB 缓存时,必须在前端 Web 服务器上指定文件存储的位置。 默认情况下,缓存在安装 SharePoint Server 的驱动器上创建。 请确保设置 BLOB 缓存的驱动器有充足的可用空间用来存储缓存。 此外,选择由尽可能少的进程使用的驱动器,以便 BLOB 缓存进程在尝试访问驱动器时不会遇到冲突。 如果太多进程争用 BLOB 缓存所在的驱动器上的磁盘访问,BLOB 缓存性能和其他进程将受到不利影响。
如果计划在使用大量缓存的情况下使用 BLOB 缓存,例如在高流量环境中提供视频,并且要使用 ULS 日志记录,请考虑将 BLOB 缓存放置在与 ULS 日志不同的物理驱动器上,而不是放在单独的分区上。 将 BLOB 缓存和 ULS 日志记录存储到同一个驱动器可能会导致服务器性能变差。 如果将 BLOB 缓存和 ULS 登录放在同一物理驱动器中,请确保密切监视磁盘队列长度,以产生任何性能影响。
每个前端 Web 服务器都有自己的 BLOB 缓存的本地副本,这是根据已接收文件的请求建立的。 如果您使用带有多个前端 Web 服务器的负载平衡,每台服务器都包含自己的缓存。 当第一个服务器请求文件时,该文件仅缓存到该服务器。 如果第二台服务器对同一个文件发出请求,第二个请求会发送至数据库服务器,然后数据库服务器在第二台服务器上检索文件至缓存。
启用 BLOB 缓存
BLOB 缓存在每个 Web 应用程序的 web.config 文件中配置,默认情况下不启用。 您必须特别启用 BLOB 缓存来获得该缓存提供的性能优势。 有关如何启用 BLOB 缓存的信息,请参阅Configure cache settings for a web application in SharePoint Server。
规定 BLOB 缓存的大小
在决定创建 BLOB 缓存的大小时,必须考虑文件的数量和大小,以确定要在缓存中存储的数据的总大小。 默认情况下,BLOB 缓存设置为 10 GB (GB) 。 在驱动器上允许至少比缓存大小多 20% 的空间。 例如,如果有 100 GB 的内容,请在至少具有 150 GB 空间的驱动器上将缓存大小设置为 120 GB。 如果 BLOB 缓存太小,则向用户提供文件的速度会变慢,从而降低站点的性能。
如果您准备在您网站上使用图像呈现功能,您应当考虑将每一个呈现设置成缓存中的单个 BLOB。 例如,如果您计划给每个图像设置五个呈现,那么您必须在驱动器上大幅分配 20% 以上的总预估额外空间。
输出缓存、对象缓存和匿名搜索结果缓存
除了 BLOB 缓存,SharePoint Server 还提供以下几种类型的缓存,帮助改善浏览器中 Web 页加载的速度:
注意
您必须使用您的网站上的发布功能来使用输出缓存或对象缓存。
输出缓存:存储页面已呈现的输出。 它还可根据请求页面的用户的权限存储不同版本的缓存页面。
缓存配置文件介绍每种类型的页面输出缓存的特定缓存设置。 缓存配置文件设置可在网站集级别由网站集管理员在用户界面中配置,也可由前端 Web 服务器上管理员在 Web 应用级别上在用户界面中配置。 网站集级别的页面输出缓存必须在网站集级别或是 Web 应用级别上配置页面输出缓存配置文件之前启用。 有关详细信息,请参阅Configure cache profile settings。
对象缓存:通过在前端 Web 服务器的内存中存储对象(例如列表和库)、网站设置和页面布局,减少 Web 服务器和 SQL 数据库之间的流量。 因此,需要这些项目的页面能够快速呈现,从而提高了向客户端浏览器提供页面的速度。
对象缓存设置可在网站集级别由网站集管理员在用户界面中配置,并在默认情况下启用。 可以在前端 Web 服务器上的 Web 应用程序级别配置最大缓存大小,以限制缓存用于所有网站集的最大内存量。 有关详细信息,请参阅Configure object cache settings。
匿名搜索结果缓存:主要由发布网站使用,授予匿名用户权限。 匿名搜索结果缓存保存匿名用户的搜索结果,以备下次相同查询时使用。 这将改善使用内容搜索 Web 部件的网页的性能。
比特率限制
本节介绍有关比特率限制的信息,介绍何时该通过 SharePoint Server 解决方案使用比特率限制并解释如何启用比特率限制。
比特率限制概述
比特率限制是一项 IIS 7.0 扩展,用来测量服务器和客户端计算机之间传输的媒体文件类型和数据的下载速度。 媒体文件类型(例如 Windows Media 视频 (WMV)、MPEG-4 (MP4) 和 Adobe Flash 视频)的编码比特率会得到自动检测,而这些文件通过 HTTP 发送给客户端的速度根据比特率限制的配置进行控制。 有关详细信息,请参阅 Bit Rate Throttling(比特率限制)。
决定使用比特率限制
如果要将长时间播放的视频资产提供给 SharePoint Server 中的用户,请在 IIS 中启用比特率限制。 如果没有比特率限制,IIS 会尽可能多地使用带宽为视频文件提供服务,这将导致网络性能的提高。 在 IIS 中启用比特率限制时,它将提供仅使用所需带宽来支持渐进式下载和观看视频的视频文件。 当您同时启用 BLOB 缓存时,比特率限制使用文件的扩展规则将其缓存至磁盘。 使用比特率限制从 BLOB 缓存提供的文件根据使用编码比特率的压缩大小的百分比发送至客户端。 例如,如果组织中的视频小于 10 MB,你可能会决定不使用比特率限制,因为它会影响用户将视频下载到其本地计算机的速度。 但是,如果要提供视频文件,请启用比特率限制以控制文件下载到客户端计算机的速度。
注意
如果您没有首先启用 BLOB 缓存,并将其配置为缓存您想要限制的文件类型时,比特率限制将不能正常工作。
启用比特率限制
若要在 IIS 7.0 中启用比特率限制,必须安装 IIS Media Services 2.0。 有关如何安装IIS Media Services 2.0的信息,请参阅比特率限制。 若要了解如何配置比特率限制,请参阅 Bit Rate Throttling Configuration Walkthrough(比特率限制配置演练)。
最大上载文件大小
本节介绍上载文件的大小限制,告知如何决定最大上载文件的大小限制以及配置的方式。
最大上载文件大小概述
最大上载文件大小是 SharePoint Server Web 应用使用的一项设置,规定一个用户可以上载至服务器的文件的最大大小限制。 当您创建了一个新的 Web 应用时,SharePoint Server 设置默认的最大上载大小为 250 MB。 如果用户尝试上载一个大于规定的最大上载大小的文件,那么该项上载任务将会失败。
决定最大上载文件大小
每个将文件上传至库的用户都使用连接至服务器的链接,并增加数据库中的数据量。 这会影响了服务器的负载能力、反应时间及数据容量。 根据你的方案,如果服务器未配置为处理更大的文件量,则可能会对服务器性能产生负面影响。 若要确定服务器的上传文件大小限制,请考虑站点的用户数以及他们将上传的文件的大小。 例如,如果用户将主要上传 500 MB 的视频文件,则上传文件大小限制应足够大,以便轻松容纳用户上传的最大文件。 当你计划调整上传文件大小限制时,请记住此举还将直接影响你服务器环境的容量规划。 若要了解关于大容量媒体文件存储的更多信息,请参阅在 SharePoint Server 2013 中规划数字资源库。
配置最大上载文件大小
若要在 SharePoint Server 中配置上传文件大小,服务器场管理员必须改变管理中心“Web 应用程序常规设置”页面上的"最大上载大小"的值。
注意
如果您提高一个 Web 应用的默认最大上载大小,同时还计划使用内容部署将该 Web 应用中的网站集的内容转移至另一个服务器场或网站集,您还必须提高目标服务器上的默认最大上载大小,否则此项内容部署任务将会失败。