在 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 缓存来获得该缓存提供的性能优势。 有关如何启用 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 Readme(比特率限制自述文件)。 若要了解如何配置比特率限制,请参阅 Bit Rate Throttling Configuration Walkthrough(比特率限制配置演练)。
最大上载文件大小
本节介绍上载文件的大小限制,告知如何决定最大上载文件的大小限制以及配置的方式。
最大上载文件大小概述
最大上载文件大小是 SharePoint Server Web 应用使用的一项设置,规定一个用户可以上载至服务器的文件的最大大小限制。 当您创建了一个新的 Web 应用时,SharePoint Server 设置默认的最大上载大小为 250 MB。 如果用户尝试上载一个大于规定的最大上载大小的文件,那么该项上载任务将会失败。
决定最大上载文件大小
每个将文件上传至库的用户都使用连接至服务器的链接,并增加数据库中的数据量。 这会影响了服务器的负载能力、反应时间及数据容量。 基于你的方案,如果服务器没有配置处理大容量文件的功能,这将对你的服务器性能产生消极影响。 若要决定你的服务器的上传文件大小限制应该设置为多少,请考虑你网站的用户数以及他们所上传文件的大小。 例如,如果你的用户主要上传大小为 500 MB 的视频文件,那么上传文件大小限制应该足够大,以便轻松涵盖用户将会上传的最大文件。 当你计划调整上传文件大小限制时,请记住此举还将直接影响你服务器环境的容量规划。 若要了解关于大容量媒体文件存储的更多信息,请参阅在 SharePoint Server 2013 中规划数字资源库。
配置最大上载文件大小
若要在 SharePoint Server 中配置上传文件大小,服务器场管理员必须改变管理中心“Web 应用程序常规设置”页面上的"最大上载大小"的值。
注意
如果您提高一个 Web 应用的默认最大上载大小,同时还计划使用内容部署将该 Web 应用中的网站集的内容转移至另一个服务器场或网站集,您还必须提高目标服务器上的默认最大上载大小,否则此项内容部署任务将会失败。