二进制大对象的基于磁盘的缓存

上次修改时间: 2010年4月19日

适用范围: SharePoint Server 2010

本文内容
启用和修改基于磁盘的缓存
刷新基于磁盘的缓存
对基于磁盘的缓存的改进

基于磁盘的缓存可控制二进制大型对象 (BLOB)(如图像、声音和视频文件)的缓存。基于磁盘的缓存的速度非常快;因此不需要数据库往返。从数据库检索 BLOB 一次,然后将其存储在 Web 客户端上。将从缓存中为后续的请求提供服务并根据安全性对其进行修整。可以使用 Stsadm 命令刷新与服务器场中的各个 Web 前端计算机上的指定 Web 应用程序关联的所有 BLOB 缓存:stsadm –o setproperty –propertyname blobcacheflushcount –propertyvalue 11 –urlhttp://mywebapp::port

启用和修改基于磁盘的缓存

默认情况下将禁用基于磁盘的缓存。若要启用和自定义基于磁盘的缓存,您必须修改映射到 Internet Information Services (IIS) 网站的 SharePoint Web 应用程序的 web.config 文件中的以下语句:

<BlobCache location="C:\blobCache" path="\.(gif|jpg|png|css|js)$" maxSize="10" max-age="86400" enabled="false"/>

在上面的示例中:

  • location 是将用于存储缓存文件的目录。

  • path 以常规表达式的形式指定根据文件扩展名缓存哪些文件。

  • maxSize 表示基于磁盘的缓存的最大允许大小(以 GB 为单位)。

  • max-age 指定客户端浏览器缓存下载到客户端计算机的 BLOB 的最长时间(以秒为单位)。如果下载的项自上次下载后尚未过期,则当请求该页时,不会重新请求相同的项。默认情况下,max-age 属性设置为 86400 秒(即 24 个小时),但它可以设置为 0 或更长的时间段。

  • enabled 为禁用或启用缓存的布尔值。

刷新基于磁盘的缓存

  1. 在"网站操作"菜单上,指向"网站设置",然后单击"修改所有网站设置"。

  2. 在"网站集管理"下,单击"网站集对象缓存"。

  3. 在"重置基于磁盘的缓存"部分中,执行以下一项或多项操作:

    • 若要强制服务器重设其基于磁盘的缓存,请选择"强制此服务器重置其基于磁盘的缓存"。

    • 若要强制所有服务器重设其基于磁盘的缓存,请选择"强制服务器场中的所有服务器重置其基于磁盘的缓存"。

    备注

    如果您选中了一个或多个复选框,则当您单击"确定"时,将立即刷新磁盘缓存中的所有条目。如果您未选中任何复选框,则磁盘缓存保持不变,管理项过期,当网站中更改项时或当超过磁盘大小时,这些项被移除。

  4. 单击"确定"。

对基于磁盘的缓存的改进

Microsoft SharePoint Server 2010 通过增加服务器场容量、增加吞吐量并支持数字媒体资产,为基于磁盘的缓存引入新功能。

基于磁盘的缓存的主要目标是,通过减少 Microsoft SQL Server 的负载来增加服务器场的容量。基于磁盘的缓存通过将文件内容存储到前端 Web 服务器的硬盘中来做到这一点。当未缓存的文件的请求由前端 Web 服务器处理时,基于磁盘的缓存将从 SQL Server 中获取文件,再将该文件保存到磁盘,然后将该文件提供给请求它的客户端。之后,将从存储在磁盘上的文件提供对由前端 Web 服务器处理的同一文件的将来请求,而不是从 SQL Server 提供这些请求。每个前端 Web 服务器都保留自己的缓存。

基于磁盘的缓存还会在访问缓存文件时增加服务器的吞吐量,因为可立即将这些文件提供给客户端,而无需先访问 SQL Server。

基于磁盘的缓存通过提供 HTTP 字节范围支持来支持 SharePoint Server 2010 中的数字资产媒体;基于磁盘的缓存现在可提供针对部分文件的请求。基于磁盘的缓存将在磁盘上对整个文件进行缓存,但对文件的部分内容(如视频的最后 5 MB 内容)提出的请求返回请求的字节数,而不是返回整个文件。仅返回部分文件可节省带宽,更重要的是,可使媒体播放器向基于磁盘的缓存文件发出"搜寻"请求。例如,如果您决定跳到您在 Windows Media Player 上观看的视频的结尾附近,则它会计算您正在搜寻的字节范围并针对所需的字节发出范围请求。

在管理大型文件(如视频和其他富媒体)时,SharePoint Server 2010 需要说明从 SQL Server 获取这些文件需花费较长时间这一事实,从而为客户端造成较长的延迟。为了解决此问题,基于硬盘的缓存将从 SQL Server 上分段下载内容。在基于硬盘的缓存下载完几段内容后,它会开始向客户端发送文件。此方法大大改进了客户端上的"至第一字节的时间"(TTFB) 体验,因为无需先从 SQL Server 接收整个文件,基于磁盘的缓存便可开始提供文件。

可以使用比特率限制来进一步限制服务器上的带宽消耗,从而减小文件的下载速度。此功能由 IIS Media Pack(该链接可能指向英文页面) 模块提供。该模块不会添加或删除任何 SharePoint Server 功能,但由于每个连接占用的带宽较小,因此它会启用多个同步连接。

请参阅

概念

自定义缓存概述

输出缓存和缓存配置文件

对象缓存

管理数字资产