高速缓存

http://blog.csdn.net/romandion/article/details/2987985

   上一页      目录      索引      下一页     

Sun logo
Sun Java System Web Proxy Server 4.0.1 管理指南 

第 12 章
高速缓存

本章介绍 Sun Java™ System Web Proxy Server 如何对文档进行高速缓存,还介绍了如何使用联机页面来配置高速缓存。

本章包括以下各节:


高速缓存的工作原理

对于使用代理服务器访问远程服务器而不是直接访问远程服务器的客户机,高速缓存降低了网络通信流量并缩短了响应时间。

客户机向代理服务器请求 Web 页或文档时,代理服务器会在将文档发送给客户机的同时将文档从远程服务器复制到其本地高速缓存目录结构。

如果客户机请求的是以前请求过并已复制到代理服务器高速缓存中的文档,代理服务器将从高速缓存返回文档,而不是再次从远程服务器检索文档(参见图 12-1)。如果代理服务器确定文件不是最新的,将从远程服务器刷新该文档并更新其高速缓存,然后再将文档发送到客户机。

图 12-1 代理服务器文档检索

代理服务器文档检索图示

高速缓存中的文件由 Sun Java™ System Web Proxy Server 垃圾收集实用程序 (CacheGC) 自动进行维护。CacheGC 会自动定期清理高速缓存来确保其不会被过期文档弄乱。


了解高速缓存结构

高速缓存由一个或更多个分区组成。从概念上讲,分区是指磁盘上留作高速缓存之用的存储区域。如果想要让高速缓存跨越若干个磁盘,则至少需要为每个磁盘配置一个高速缓存分区。可以单独管理各个分区。也就是说,可以单独启用、禁用和配置某个分区,而所有其他分区均不受影响。

在一个位置存储大量高速缓存的文件会降低性能,因此,好的做法是在每个分区中创建若干个目录或区段。区段是高速缓存结构中仅次于分区的下一个级别。高速缓存的所有分区最多可以有 256 个区段。高速缓存区段数必须为 2 的乘方(例如,1、2、4、8、16、...、256)。

高速缓存分层结构中的最低级别是子区段。子区段是指区段内的目录。每个区段有 64 个子区段。高速缓存的文件存储在子区段,即高速缓存的最低级别中。

图 12-2 显示了具有分区和区段的高速缓存结构的一个示例。在该图中,高速缓存目录结构将全部高速缓存分成了三个分区。第一个分区包含四个高速缓存区段,后两个分区各包含两个区段。

每个高速缓存区段的表示方法是:以 s 代表区段,其后是区段号。以显示为 s3.4 的区段为例,3 表示高速缓存区段数 (23 = 8) 中 2 的幂次,4 表示区段号(共 8 个区段,依次标记为 0, ..., 7)。因此,s3.4 代表 8 个区段中的第 5 个区段。

图 12-2 高速缓存结构示例

高速缓存结构示例图示


高速缓存中的文件分布

Proxy Server 使用特定算法来确定应将文档存储在哪个目录。该算法可以确保均匀分布目录中的文档。均匀分布很重要,因为包含大量文档的目录容易引发性能问题。

Proxy Server 使用 RSA MD5(Message Digest 5,消息摘要 5)算法将 URL 简化为 16 字节的二进制数据,并使用该数据的 8 个字节来计算在高速缓存中存储文档时使用的 16 个字符的十六进制文件名。


设置高速缓存细节

可以通过设置高速缓存细节来启用高速缓存并控制 Proxy Server 将要缓存的协议类型。高速缓存细节包括以下项:

    • 是启用还是禁用了高速缓存
    • 高速缓存存储其临时文件的工作目录
    • 将在其中记录高速缓存的 URL 的目录的名称
    • 高速缓存的大小
    • 高速缓存的容量
    • 将要高速缓存的协议类型
    • 何时刷新高速缓存的文档
    • 代理服务器是否应跟踪文档的访问次数并将其回报给远程服务器



设置高速缓存细节
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Set Cache Specifics" 链接。将显示 "Set Cache Specifics" 页面。
    • 可以通过选择相应的选项来启用或禁用高速缓存。默认情况下将启用高速缓存。有关更多信息,参见启用高速缓存
    • 输入工作目录。默认情况下工作目录位于代理服务器实例下。如果希望高速缓存目录位于其他位置,可以对其进行更改。有关更多信息,参见创建高速缓存工作目录
    • 单击分区配置链接。将显示 "Add/Edit Cache Partitions" 页面。可以添加新的高速缓存分区或编辑现有的高速缓存分区。高速缓存大小是指最大允许高速缓存增长到的大小。高速缓存的最大大小是 32GB。有关更多信息,参见设置高速缓存大小
    • 单击高速缓存容量配置链接。将显示 "Set Cache Capacity" 页面。可以在 "Set Cache Capacity" 页面上设置高速缓存容量。有关更多信息,参见编辑高速缓存容量
    • 选中 "Cache HTTP" 复选框来启用对 HTTP 文档的高速缓存。如果决定要让代理服务器对 HTTP 文档进行高速缓存,则需要确定它应始终对高速缓存中的文档进行最新性检查,还是应按某一时间间隔进行检查。还可以启用或禁用 Proxy Server 向远程服务器报告高速缓存命中次数。有关更多信息,参见高速缓存 HTTP 文档。包括以下选项:
      • 选择 "Always Check That The Document Is Up To Date" 选项可确保 HTTP 文档始终是最新的。
      • 从 "Check Only If Last Check More Than" 下拉式列表中选择小时数可指定代理服务器的刷新间隔。可使用以下任一选项执行最新性检查:
        • Use Last-modified Factor。它是源服务器随文档一同发送的 last-modified 标头。
        • Use Only Explicit Expiration Information。代理服务器使用 Expires 标头来确定高速缓存条目是新条目还是过期条目。
      • 选择 "Never Report Accesses To Remote Server" 选项可禁止代理服务器向远程服务器报告访问次数。
      • 选择 "Report Cache Hits To Remote Server" 选项可跟踪文档的访问次数并将其回报给远程服务器。
    • 可以设置高速缓存的 FTP 文档的刷新间隔。选中 "Yes; Reload If Older Than" 复选框并从下拉式列表中选择值来设置时间间隔。有关更多信息,参见高速缓存 FTP 和 Gopher 文档
    • 可以设置高速缓存的 Gopher 文档的刷新间隔。选中 "Yes; Reload If Older Than" 复选框并从下拉式列表中选择值来设置时间间隔。有关更多信息,参见高速缓存 FTP 和 Gopher 文档
    • 单击 "OK"。
    • 单击 "Restart required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

以下各节介绍有关 "Set Cache Specifics" 页面上所列元素的更多信息,并帮助您确定最适合自身需要的设置。

启用高速缓存

对于代理服务器用户来说,高速缓存是减少网络通信流量的有效方法。由于不再需要从远程服务器检索文档,因此对于客户机而言,高速缓存还缩短了响应时间。启用高速缓存时代理服务器将能够最有效地发挥作用。

创建高速缓存工作目录

高速缓存文件位于高速缓存分区下。在 "Set Cache Specifics" 页面上指定的工作目录往往是高速缓存的父目录。所有高速缓存的文件均以有组织的目录结构形式出现在高速缓存目录下。如果更改了高速缓存目录的名称或将其移动到了其他位置,则须将新位置告知代理服务器。

可以将高速缓存目录结构扩展至多个文件系统,这样便可使一个大的高速缓存结构散布在多个较小的磁盘上,而不用将其全部存放在一个大的磁盘中。每个代理服务器均须拥有各自的高速缓存目录结构,也就是说,多个代理服务器不能同时共享高速缓存目录。

设置高速缓存大小

高速缓存大小指示分区大小。高速缓存大小应始终小于高速缓存容量,因为它是高速缓存最大可以增长到的大小。所有分区大小的总和必须小于或等于高速缓存大小。

可供代理服务器高速缓存使用的磁盘空间大小对高速缓存性能有相当大的影响。如果高速缓存过小,Cache GC 必须更频繁地删除高速缓存的文档以腾出磁盘空间,还必须更频繁地从内容服务器检索文档,因而会降低性能。

高速缓存大小越大越好,因为高速缓存的文档越多,网络通信流量负载就越少,代理服务器所提供的响应时间也就越短。此外,如果用户不再需要高速缓存的文档,GC 会将它们删除。除非文件系统有限制,否则,高速缓存大小再大也不过分;过剩的空间只不过保持未用而已。

还可将高速缓存分割于多个磁盘分区。



注意

更改高速缓存结构是耗时的。


编辑高速缓存容量

可以通过 "Set Cache Specifics" 页面及 "Set Cache Capacity" 页面来编辑高速缓存容量。有关编辑高速缓存容量的更多信息,参见设置高速缓存容量

高速缓存 HTTP 文档

从本质上讲,高速缓存 HTTP 文档不同于高速缓存 FTP 和 Gopher 文档。HTTP 文档提供了其他协议的文档所不具备的高速缓存功能。不过,通过适当设置和配置高速缓存,可以确保 Proxy Server 有效地高速缓存 HTTP、FTP 和 Gopher 文档。

所有 HTTP 文档都有一个描述性的标头部分,Proxy Server 使用该部分来比较和评判代理服务器高速缓存中的文档与远程服务器上的文档。代理服务器对 HTTP 文档执行最新性检查时,如果高速缓存中文档的版本已过期,代理服务器将向服务器发送请求,告知服务器返回文档。上一次请求后文档往往并没有发生变化,因此将不会传送文档。这种检查 HTTP 文档是否为最新的方法节约了带宽并缩短了等待时间。

为减少与远程服务器间的事务,可以通过 Proxy Server 为 HTTP 文档设置 "Cache Expiration" 设置。"Cache Expiration" 设置指示代理服务器估计向服务器发送请求前是否需要对 HTTP 文档进行最新性检查。代理服务器根据在标头中找到的 HTTP 文档的 "Last-Modified" 日期进行这种估计。

对于 HTTP 文档,还可以使用 "Cache Refresh" 设置。此选项指定代理服务器是始终进行最新性检查(将覆盖失效期设置)还是等待特定时间段后再进行检查。表 12-1 显示同时指定失效期设置和刷新设置时代理服务器将执行的操作。使用刷新设置可显著缩短等待时间和节约带宽。

表 12-1 对 HTTP 使用 "Cache Expiration" 和 "Cache Refresh" 设置

刷新设置

失效期设置

结果

始终执行最新性检查

(不适用)

始终执行最新性检查

用户指定的时间间隔

使用文档的 "expires" 标头

时间间隔到期时执行最新性检查

使用文档的 Last-Modified 标头进行估计

估计值和 expires 标头中的较小值*

* 对于变化频繁的文档,使用较小值可以防止从高速缓存中获取其过期数据。

设置 HTTP 高速缓存刷新间隔

如果决定要让 Proxy Server 对 HTTP 文档进行高速缓存,需要确定它应始终对高速缓存中的文档执行最新性检查,还是应基于 "Cache Refresh" 设置(最新性检查时间间隔)进行检查。例如,对于 HTTP 文档,合理的刷新间隔是四到八小时。刷新间隔越长,代理服务器与远程服务器的连接次数就越少。即使在刷新间隔期间代理服务器不执行最新性检查,用户也可以通过在客户端单击 "Reload" 按钮来强制刷新;该操作使代理服务器强制与远程服务器进行最新性检查。

可以在 "Set Cache Specifics" 页面或 "Set Caching Configuration" 页面上设置 HTTP 文档的刷新间隔。通过 "Set Cache Specifics" 页面可以配置全局高速缓存过程,而通过 "Set Caching Configuration" 页面可以控制特定 URL 和资源的高速缓存过程。

设置 HTTP 高速缓存失效期策略

还可以将服务器设置为只使用 last-modified 因子或显式失效期信息来检查高速缓存的文档是否是最新的。

显式失效期信息是某些 HTTP 文档中的标头,用来指定文件过期的日期和时间。使用显式 Expires 标头的 HTTP 文档并不多,因此最好根据 Last-modified 标头进行估计。

如果决定根据 Last-modified 标头对 HTTP 文档进行高速缓存,需要选择一个小数用于失效期估计。该小数(称为 LM 因子)将与上次修改时间和上次对文档执行最新性检查时间之间的间隔相乘,然后将结果数字与上次执行最新性检查到现在为止的时间进行比较。如果该数字比时间间隔小,则表示文档未过期。小数越小,就会使代理服务器更频繁地检查文档。例如,假定有一个文档,上次更改它是在十天前。如果将 last-modified 因子设置为 0.1,代理服务器将把该因子理解为文档可能会在一天内保持不变 (10 * 0.1 = 1)。在这种情况下,如果不到一天前对文档进行了检查,代理服务器将返回高速缓存中的文档。

仍使用本示例,如果将 HTTP 文档的高速缓存刷新设置的值设置为不足一天,代理服务器每天将进行不止一次的最新性检查。代理服务器将始终使用要求它更频繁地更新文件的值(高速缓存刷新或高速缓存失效期)。

可以在 "Set Cache Specifics" 页面或 "Set Caching Configuration" 页面上设置 HTTP 文档的失效期设置。通过 "Set Cache Specifics" 页面可以配置全局高速缓存过程,而通过 "Set Caching Configuration" 页面可以控制特定 URL 和资源的高速缓存过程。

向远程服务器报告 HTTP 访问情况

Sun Java™ System Web Proxy Server 对文档进行高速缓存后,再次刷新文档前文档可能已被访问许多次。对于远程服务器而言,向代理服务器发送将要由其进行高速缓存的一个副本只代表一次访问(或称“命中”)。Sun Java™ System Web Proxy Server 可以对最新性检查间隔期间访问代理服务器高速缓存中给定文档的次数进行计数,然后在下次刷新文档时通过另一个 HTTP 请求标头 (Cache-Info) 将该命中计数回传给远程服务器。这样一来,如果将远程服务器配置为可以识别该类型标头,就可以收到更准确的文档访问次数报告。

高速缓存 FTP 和 Gopher 文档

FTP 和 Gopher 不具有用来检查文档最新性的方法。因此,优化 FTP 和 Gopher 文档高速缓存的唯一方法是设置 "Cache Refresh" 时间间隔。"Cache Refresh" 时间间隔是指 Proxy Server 从远程服务器检索文档最新版本前等待的时间长度。如果不设置 "Cache Refresh" 时间间隔,即使高速缓存中的版本是最新的,代理服务器仍将检索这些文档。

设置 FTP 和 Gopher 高速缓存刷新间隔

如果要设置 FTP 和 Gopher 高速缓存刷新间隔,请选择一个自认为对代理服务器获取的文档安全的时间间隔。例如,如果存储很少发生变化的信息,请使用较大的值(若干天)。如果数据不断变化,您会希望至少每隔几小时就检索一次文件。刷新期间存在着将过期文件发送给客户机的风险。如果时间间隔足够短(几小时),在响应时间显著缩短的同时也大部分消除了这种风险。

可以在 "Set Cache Specifics" 页面或 "Set Caching Configuration" 页面上设置 FTP 和 Gopher 文档的高速缓存刷新间隔。通过 "Set Cache Specifics" 页面可以配置全局高速缓存过程,而通过 "Set Caching Configuration" 页面可以控制特定 URL 和资源的高速缓存过程。有关使用 "Set Cache Specifics" 页面的更多信息,参见设置高速缓存细节;有关使用 "Set Caching Configuration" 页面的更多信息,参见配置高速缓存



如果 FTP 和 Gopher 文档间的差异很大(有些经常发生变化,有些则很少发生变化),请使用 "Set Caching Configuration" 页面为每种文档分别创建模板(例如,创建包含资源 ftp://.*.gif 的模板),然后设置适合该资源的刷新间隔。



创建和修改高速缓存

高速缓存分区是指留待高速缓存之用的磁盘或内存的预留部分。如果高速缓存容量发生变化,可能需要使用 "Add/Edit Cache Partitions" 页面来更改或添加分区。在此页面中,可以编辑分区的位置、助记名及最大和最小大小。还可查看该分区的高速缓存区段表。

添加高速缓存分区
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Add/Edit Cache Partitions" 链接。将显示 "Add/Edit Cache Partitions" 页面。
    • 单击 "Add Cache Partition" 按钮。将显示 "Cache Partition Configuration" 页面。
    • 为新分区输入适当的值。
    • 单击 "OK"。
    • 单击 "Restart required"。将显示 "Apply changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改
修改高速缓存分区
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Add/Edit Cache Partitions" 链接。将显示 "Add/Edit Cache Partitions" 页面。
    • 单击要更改的分区的名称。
    • 编辑信息。
    • 单击 "OK"。
    • 单击 "Restart required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


设置高速缓存容量

高速缓存容量值用于导出高速缓存目录结构。高速缓存目录中的最大区段数是根据高速缓存容量导出的。高速缓存容量与高速缓存目录中的高速缓存分层结构有直接关系。容量越大,分层结构越大。高速缓存容量应大于或等于高速缓存大小。如果已知自己打算在以后增加高速缓存大小(例如,通过添加外部磁盘的方式),则将容量设置为大于高速缓存大小可能会有所帮助。高速缓存容量最大可达 32 GB,具有 256 个区段。

设置高速缓存容量
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Set Cache Capacity" 链接。将显示 "Set Cache Capacity" 页面。
    • 从 "New Capacity Range" 下拉式列表中选择容量。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


管理高速缓存区段

代理服务器高速缓存被分成一个或更多个高速缓存区段。最多可以有 256 个区段。高速缓存区段数必须为 2 的乘方(例如,1、2、4、8、16、...、256)。最大容量为 32GB(最优),具有 256 个高速缓存区段。

如果选用 500MB 的高速缓存容量,安装程序会创建 4 个高速缓存区段 (500/125 = 4);如果选择 2GB 的高速缓存容量,安装程序会创建 16 个区段 (2000/125 = 16)。为便于获得区段数,选择 125MB 作为每个区段的最优值。区段数越多,存储和分布的 URL 数就越大。

管理高速缓存区段
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Manage Sections" 链接。将显示 "Manage Sections" 页面。
    • 更改表中的信息。可以在现有分区间移动区段。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


设置垃圾收集首选项

"Set Garbage Collection Preferences" 页面用于设置垃圾收集模式。

可以使用高速缓存垃圾收集器来删除高速缓存中的文件。垃圾收集既可以在自动模式下进行,也可以在显式模式下进行。显式模式是管理员使用 "Schedule Garbage Collection" 页面从外部进行调度的。选择其中一种模式,然后单击 "OK"。单击 "Restart Required"。将显示 "Apply Changes" 页面。单击 "Restart Proxy Server" 按钮以应用更改。


调度垃圾收集

可以通过 "Schedule Garbage Collection" 页面指定进行垃圾收集的日期和时间。

调度垃圾收集:
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Schedule Garbage Collection" 链接。将显示 "Schedule Garbage Collection"。
    • 从 "Schedule Garbage Collection At" 列表中选择进行垃圾收集的时间。
    • 指定在星期几进行垃圾收集。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


配置高速缓存

使用 "Set Caching Configuration" 页面可以配置想要对特定资源采用的高速缓存类型。可以为与指定的正则表达式模式匹配的 URL 指定若干个配置参数值。可以通过此特性根据高速缓存的文档的类型对代理服务器高速缓存进行精细控制。配置高速缓存可能需要确定以下各项:

    • 高速缓存默认值
    • 如何高速缓存需要进行验证的页面
    • 如何高速缓存查询
    • 最小和最大高速缓存文件大小
    • 何时刷新高速缓存的文档
    • 高速缓存失效期策略
    • 客户机中断操作的高速缓存行为
    • 到源服务器的失败连接的高速缓存行为



    如果将某个资源的高速缓存默认值设置为 "Derived configuration" 或 "Don't cache",高速缓存配置选项将不会在 "Set Caching Configuration" 页面中出现。不过,如果为资源选择了高速缓存默认值 "Cache",就可以指定若干个其他配置项。


配置高速缓存
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Set Caching Configuration" 页面。将显示 "Set Caching Configuration" 页面。
    • 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮来输入正则表达式,然后单击 "OK"。
    • 更改配置信息。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

高速缓存配置元素

以下各节介绍 "Set Caching Configuration" 页面所列的各项。这些节中包括的信息将帮助您确定最适合自身需要的配置。

设置高速缓存默认值

可以通过代理服务器来确定特定资源的高速缓存默认值。资源是指符合所指定的某种条件的文件类型。例如,可能希望服务器自动高速缓存来自域 company.com 的所有文档。如果是这样,请单击 "Set Caching Configuration" 页面顶部的 "Regular Expression" 按钮,然后在出现的字段中输入

[a-z] *://[^/:]/.company/.com.*

默认情况下会选中 "Cache" 选项。服务器会自动高速缓存来自该域的所有可高速缓存的文档。有关正则表达式的更多信息,参见“了解正则表达式”。



如果将某个资源的高速缓存默认值设置为 "Derived configuration" 或 "Don't cache",则不必为该资源配置高速缓存。不过,如果为资源选择了高速缓存默认值 "Cache",就可以指定若干个其他配置项。有关这些项的列表,参见配置高速缓存


也可以在 "Set Cache Specifics" 页面上设置 HTTP、FTP 和 Gopher 的高速缓存默认值。

高速缓存要求进行验证的页面

可以让服务器高速缓存要求进行用户验证的文件。如果选择让 Proxy Server 高速缓存这些文件,Proxy Server 会对高速缓存中的这些文件进行标记,这样当用户请求它们时,Proxy Server 便知道这些文件要求从远程服务器进行验证。

因为 Proxy Server 既不知道远程服务器的验证方式,也不知道用户的 ID 或口令,所以它只会在每次收到对要求进行验证的文档的请求时,强制同远程服务器进行最新性检查。因此,用户必须输入 ID 和口令才能获得文件的访问权。如果用户早先在 Navigator 会话中已访问过该服务器,Navigator 会自动发送验证信息,而不提示用户输入该信息。

如果不启用对要求进行验证的页面进行高速缓存,代理服务器将采用默认值,即不高速缓存这些页面。

高速缓存查询

高速缓存的查询仅适用于 HTTP 文档。可以限制高速缓存的查询的长度,也可以完全禁止对查询的高速缓存。查询越长,其重复的可能性越低,对其进行高速缓存所起的作用也就越小。

查询受以下高速缓存限制的制约:访问方法必须是 GET,文档不能被保护(除非已启用对验证过的页面进行高速缓存),响应必须至少有 Last-modified 标头。这就要求查询引擎指出可以高速缓存查询结果文档。如果存在 Last-modified 标头,查询引擎应支持有条件的 GET 方法(具有 If-modified-since 标头),以使高速缓存生效;否则,它应返回 Expires 标头。

设置最小和最大高速缓存文件大小

可以为 Proxy Server 高速缓存的文件设置最小和最大大小。如果网络连接速度快,可能需要设置最小大小。如果连接速度快,检索小文件的速度可能快到已没有必要让服务器对它们进行高速缓存。这种情况下,只需高速缓存较大的文件即可。可能需要设置最大文件大小,以确保大文件不会过多占用代理服务器的磁盘空间。

设置最新性检查策略

可以使用此选项来确保 HTTP 文档始终是最新的。还可以指定 Proxy Server 的刷新间隔。

设置失效期策略

可以使用 last-modified 因子或显式失效期信息来设置失效期策略。

设置客户机中断操作的高速缓存行为

如果仅检索到部分文档而客户机中断了数据传送,代理服务器能够出于高速缓存目的完成对文档的检索。如果已至少检索到文档的 25%,则默认情况下代理服务器会出于高速缓存目的完成对文档的检索。否则,代理将中断远程服务器连接并删除不完整的文件。可以增大或减小客户机中断百分比。

连接服务器失败时的行为

如果由于源服务器不可访问而导致对某个过时文档的最新性检查失败,可以指定代理服务器是否发送高速缓存中的过时文档。


高速缓存本地主机

如果从本地主机请求的 URL 缺少域名,Proxy Server 将不会对其进行高速缓存,以避免重复高速缓存。例如,如果用户从本地服务器请求 http://machine/filename.htmlhttp://machine.example.com/filename.html,这两个 URL 可能都会出现在高速缓存中。由于这些文件来自本地服务器,因此对它们的检索速度可能快到已没有必要以任何方式对它们进行高速缓存。

不过,如果公司在许多远程位置都有服务器,可能需要高速缓存来自所有主机的文档,以减少网络通信流量和缩短访问这些文件所需的时间。

启用对本地主机的高速缓存
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Cache Local Hosts" 链接。将显示 "Cache Local Hosts" 页面。
    • 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮来输入正则表达式,然后单击 "OK"。有关正则表达式的更多信息,参见管理模板和资源
    • 单击 "enabled" 按钮。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


配置文件高速缓存

默认情况下文件高速缓存处于启用状态。文件高速缓存设置包含在 server.xml 文件中。可以使用 Server Manager 更改文件高速缓存设置。



用户界面中显示有 "Configure File Cache" 页面,但在本 Proxy Server 4 版本中并未实现该功能


配置文件高速缓存
    • 在 Server Manager 中单击 "Preferences" 选项卡。
    • 单击 "File Cache Configuration" 链接。将显示 "File Cache Configuration" 页面。
    • 如果尚未选择 "Enable File Cache",请选择它。
    • 选择是否传输文件。

    启用 "Transmit File" 时,服务器高速缓存会打开文件高速缓存中文件的文件描述符,而不是文件内容,并且会使用 PR_TransmitFile 将文件内容发送至客户机。"Transmit File" 处于启用状态时,通常由文件高速缓存进行的对大、中、小文件的区分便不再适用,因为只会对打开的文件描述符进行高速缓存。默认情况下在 Windows 上启用 "Transmit File",在 UNIX 上则将其禁用。在 UNIX 上,只为对 PR_TransmitFile 具有本机 OS 支持的平台启用 "Transmit File",这些平台目前包括 HP-UX 和 AIX。建议对于其他 UNIX/Linux 平台不要启用它。

    • 输入散列表大小。默认大小为最大文件数的两倍加 1。例如,如果将最大文件数设置为 1024,则默认散列表大小为 2049。
    • 输入有效高速缓存条目的最长时效(秒)。默认情况下此值的设置为 30。此设置用于控制高速缓存文件后继续使用高速缓存的信息的时间长度。时间久于 MaxAge 的条目将由同一文件的新条目替换,如果该文件是通过高速缓存引用的。根据内容是否定期更新(即修改现有文件)来设置最长时效。例如,如果内容每天按定时间隔更新四次,可将最长时效设置为 21600 秒(6 小时)。否则,可考虑将最长时效设置为修改内容文件后希望为其上一版本提供的最长服务时间。
    • 输入要高速缓存的 "Maximum Number of Files"。默认情况下,此项设置为 1024。
    • 输入中等和小文件大小限制(字节)。默认情况下 "Medium File Size Limit" 的设置为 537600,"Small File Size Limit" 的设置为 2048。

    高速缓存对小文件、中等文件和大文件的处理方法不同。通过将文件映射到虚拟内存(目前仅限 UNIX/Linux 平台)来对中等文件的内容进行高速缓存。通过分配堆空间并将文件读入其中来对小文件的内容进行高速缓存。尽管会对大文件的相关信息进行高速缓存,但不会对大文件(比中等文件大的文件)的内容进行高速缓存。区别对待小文件和中等文件的好处是,当有大量小文件时,可以避免浪费虚拟内存的许多页面的一部分。因此,"Small File Size Limit" 的值通常比 VM 页面大小略低。

    • 设置中等和小文件空间。中等文件空间是指用于映射所有中等大小文件的虚拟内存的大小(字节)。默认情况下此值的设置为 10485760。小文件空间是指用于高速缓存的堆空间(包括用于高速缓存小文件的堆空间)的大小(字节)。对于 UNIX/Linux 平台,默认情况下此项的设置为 1048576。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


查看 URL 数据库

可以查看记录的所有高速缓存的 URL 的名称和属性。所显示的 URL 信息为按访问协议和站点名称分组的高速缓存的文档列表。在 "Search" 字段中键入域名可限制列表中出现的 URL。通过访问此信息可以执行各种高速缓存管理功能,如废止和删除高速缓存中的文档。

查看数据库中的 URL
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "View URL Database" 链接。将显示 "View URL Database" 页面。
    • 单击 "Regenerate" 按钮可生成最新的高速缓存的 URL 列表。如果想要查看特定 URL 的信息,请在 "Search" 字段中输入 URL 或正则表达式,然后单击 "Search" 按钮。
    • 如果想要查看按域名和主机分组的高速缓存数据库信息,请从列表中选择域名。将出现该域中主机的列表。单击某个主机的名称,将出现一个 URL 列表。
    • 单击某个 URL 的名称。将出现有关该 URL 的详细信息。

废止和删除高速缓存中的文件

可以通过 "View URL Database" 页面来废止和删除高速缓存中的文档。

废止或删除高速缓存的 URL
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "View URL Database" 链接。将显示 "View URL Database" 页面。
    • 单击 "Regenerate" 按钮。该操作会生成高速缓存数据库的快照。该快照构成了执行其余步骤的基础。
    • 如果知道想要废止或删除的特定 URL,请在 "Search" 字段中输入该 URL 或匹配该 URL 的正则表达式,然后单击 "Search" 按钮。如果想要查看按域名和主机分组的 URL,请从列表中选择域名。将出现该域中主机的列表。单击某个主机的名称,将出现一个 URL 列表。
    • 要废止单个文件,请选择这些文件 URL 旁的 "Ex" 选项,然后单击 "Exp/Rem Marked" 按钮。要废止列表中的所有文件,请单击表单底部的 "Exp All" 按钮。要删除高速缓存中的单个文件,请选择这些文件 URL 旁的 "Rm" 选项,然后单击 "Exp/Rem Marked" 按钮。要删除列表中的所有文件,请单击 "Rem All" 按钮。
    • 单击 "Regenerate" 按钮以重新生成快照。


      使用 "Ex" 或 "Rm" 选项时将处理关联的文件,但不会在快照中反映所做更改。需要重新生成快照,才能看到更改。



使用高速缓存批量更新

可以通过 "Cache Batch Update" 特性将文件预先装入指定的 Web 站点,或在代理服务器不忙时对高速缓存中已有的文档执行最新性检查。通过 "Set Cache Batch Updates" 页面可以创建、编辑和删除多批 URL 及启用和禁用批量更新。

创建批量更新

通过指定要进行批量更新的文件,可以主动(而不是根据需要)对文件进行高速缓存。可以通过代理服务器对当前位于高速缓存中的若干个文件执行最新性检查,或预先装入特定 Web 站点的多个文件。

创建批量更新
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Set Cache Batch Updates" 链接。将显示 "Set Cache Batch Updates" 页面。
    • 在 "Create/Select A Batch Update Configuration" 旁的下拉式列表中选择 "New and Create"。
    • 单击 "OK"。将显示 "Set Cache Batch Updates" 页面。
    • 在 "Name" 部分中输入新批量更新条目的名称。
    • 在页面的 "Source" 部分中单击与要创建的批量更新类型对应的单选按钮。如果要对高速缓存中的所有文档执行最新性检查,请单击第一个单选按钮。如果要从给定的源 URL 开始以递归方式高速缓存各 URL,请单击第二个单选按钮。
    • 在 "Source" 部分字段中,确定要在批量更新中使用的文档。
    • 在 "Exceptions" 部分中,确定要排除在批量更新之外的任何文件。
    • 在 "Resources" 部分中,输入最大同时连接数及要遍历的最大文档数。
    • 在 "Timing" 部分中输入生成批量更新的开始和结束时间。任何时刻均只能有一个批量更新处于活动状态,所以最好不要覆盖其他批量更新配置。
    • 单击 "OK"。


      不必启用批量更新即可创建、编辑和删除批量更新配置。不过,如果要按照 "Set Cache Batch Updates" 页面中设置的时间来更新批量更新,就必须启用更新。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

编辑或删除批量更新配置

可以使用 "Set Cache Batch Updates" 页面来编辑或删除批量更新。如果需要将某些文件排除在外或想更频繁地更新批次,可能需要对批量更新进行编辑。还可能需要彻底删除批量更新配置。

编辑或删除批量更新配置
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Set Cache Batch Updates" 链接。将显示 "Set Cache Batch Updates" 页面。
    • 如果要编辑批次,请选择该批次的名称,然后在 "Create/Select A Batch Update Configuration" 旁的下拉式列表中选择 "Edit"。如果要删除批次,请选择该批次的名称,然后从下拉式列表中选择 "Delete"。
    • 单击 "OK"。将显示 "Set Cache Batch Updates" 页面。
    • 根据需要修改信息。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


使用高速缓存命令行界面

代理服务器自带若干个命令行实用程序,可以通过它们配置、更改、生成和修复高速缓存目录结构。这些实用程序中大多数与 Server Manager 页面的功能完全相同,但在需要进行维护调度时可能需要使用这些实用程序(例如,作为计时程序作业)。所有实用程序都位于 extras 目录中。

运行命令行实用程序
    • 在命令行提示符中转到 server_root/proxy-serverid 目录。
    • 键入 ./start -shell

    以下各节介绍各种实用程序。

建立高速缓存目录结构

代理服务器有一个称作 cbuild 的实用程序,它是一个脱机高速缓存数据库管理器。可以通过该实用程序使用命令行界面来创建新的高速缓存结构或修改现有的高速缓存结构。可以使用 Server Manager 页面来使代理服务器能够使用新创建的高速缓存。该实用程序不更新 server.xml 文件。cbuild 无法调整有多个分区的高速缓存的大小。server.xml 文件有一个称作 CACHE 的元素,该元素有一个 cachecapacity 参数。通过 cbuild 创建或修改高速缓存时,应在 server.xml 文件中手动更新 cachecapacity 参数。

<PARTITION partitionname="part1" partitiondir="/home/build/install9

/proxy-server1/cache" maxsize="1600" minspace="5" enabled="true"/>

<CACHE enabled="true" cachecapacity="2000" cachedir="/tmp/cache">

可以在两种模式下调用 cbuild 实用程序。第一种模式是:

cbuild -d conf-dir -c cache-dir -s cache size

cbuild -d conf-dir -c cache-dir -s cache size -r

例如:

cbuild -d server_root/proxy-serverid/config -c server_root/proxy-serverid/cache -s 512

cbuild -d server_root/proxy-serverid/config -c server_root/proxy-serverid/cache -s 512 -r

其中:

    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config
    • cache-dir 是高速缓存结构的目录。
    • cache size 是高速缓存可以增长到的最大大小。该选项不能与 cache-dim 参数一起使用。最大大小是 65135 MB。
    • -r 调整现有高速缓存结构的大小(前提是它只有一个分区)。创建新高速缓存时此参数不是必需的。

可以运行 cbuild 的第二种模式是:

cbuild -d conf-dir -c cache-dir -n cache-dim

cbuild -d conf-dir -c cache-dir -n cache-dim -r

例如:

cbuild -d server_root/proxy-serverid/config -c server_root/proxy-serverid/cache -n 3

cbuild -d server_root/proxy-serverid/config -c server_root/proxy-serverid/cache -n 3 -r

其中:

    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config
    • cache-dir 是高速缓存结构的目录。
    • cache-dim 确定区段数。例如,图 12-1 中的区段显示为 s3.4,其中的 3 表示大小。cache-dim 的默认值是 0,最大值是 8。
    • -r 调整现有高速缓存结构的大小(前提是它只有一个分区)。创建新高速缓存时此参数不是必需的。

管理高速缓存 URL 列表

代理服务器有一个称作 urldb 的实用程序,用于管理高速缓存中的 URL 列表。可以使用该实用程序列出高速缓存的 URL。也可以有选择地废止和删除高速缓存数据库中高速缓存的对象。

可以根据 -o 选项将 urldb 命令分为三个组:

    • 站点
    • url

要列出域,请在命令行中输入以下内容:

urldb -o matching_domains -e reg_exp -d conf-dir

例如:

urldb -o matching_domains -e ".*phoenix.*" -d server_root/proxy-serverid/config

其中

    • matching_domains 列出匹配正则表达式的域
    • reg_exp 是所使用的正则表达式
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要列出域中所有匹配的站点,请在命令行中输入以下内容:

urldb -o matching_sites_in_domain -e reg_exp -m domain_name -d conf-dir

例如:

urldb -o matching_sites_in_domain -e ".*atlas" -m phoenix.com -d server_root/proxy-serverid/config

其中

    • matching_sites_in_domain 列出域中匹配正则表达式的所有站点
    • reg_exp 是所使用的正则表达式
    • domain_name 是域的名称
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要列出所有匹配的站点,请在命令行中输入以下内容:

urldb -o all_matching_sites -e reg_exp -d conf-dir

例如:

urldb -o all_matching_sites -e ".*atlas.*" -d server_root/proxy-serverid/config

其中

    • all_matching_sites 列出匹配正则表达式的所有站点
    • reg_exp 是所使用的正则表达式
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要列出站点中匹配的 url,请在命令行中输入以下内容:

urldb -o matching_urls_from_site -e reg_exp -s site_name -d conf-dir

例如:

urldb -o matching_urls_from_site -e "http://.*atlas.*" -s atlas.phoenix.com -d server_root/proxy-serverid/config

其中

    • matching_urls_from_site 列出站点中匹配正则表达式的所有 url
    • reg_exp 是所使用的正则表达式
    • site_name 是站点的名称
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要废止或删除站点中匹配的 url,请在命令行中输入以下内容:

urldb -o matching_urls_from_site -e reg_exp -s site_name -x e -d conf-dir

urldb -o matching_urls_from_site -e reg_exp -s site_name -x r -d conf-dir

例如:

urldb -o matching_urls_from_site -e "http://.*atlas.*" -s atlas.phoenix.com -x e -d iserver_root/proxy-serverid/config

其中

    • matching_urls_from_site 列出站点中匹配正则表达式的所有 url
    • reg_exp 是所使用的正则表达式
    • site_name 是站点的名称
    • -x e 是用于废止高速缓存数据库中匹配的 URL 的选项。该选项不能用于域和站点模式
    • -x r 是用于删除高速缓存数据库中匹配的 URL 的选项
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要列出所有匹配的 url,请在命令行中输入以下内容:

urldb -o all_matching_urls -e reg_exp -d conf-dir

例如:

urldb -o all_matching_urls -e ".*cgi-bin.*" -d server_root/proxy-serverid/config

其中

    • all_matching_urls 列出匹配正则表达式的所有 URL
    • reg_exp 是所使用的正则表达式
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要废止或删除所有匹配的 url,请在命令行中输入以下内容:

urldb -o all_matching_urls -e reg_exp -x e -d conf-dir

urldb -o all_matching_urls -e reg_exp -x r -d conf-dir

例如:

urldb -o all_matching_urls -e ".*cgi-bin.*" -x e -d server_root/proxy-serverid/config

其中

    • all_matching_urls 列出匹配正则表达式的所有 URL
    • reg_exp 是所使用的正则表达式
    • -x e 是用于废止高速缓存数据库中匹配的 URL 的选项
    • -x r 是用于删除高速缓存数据库中匹配的 URL 的选项
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

要废止或删除 URL 列表,请在命令行中输入以下内容:

urldb -l url-list -x e -e reg_exp -d conf-dir

urldb -l url-list -x r -e reg_exp -d conf-dir

例如:

urldb -l url.lst -x e -e ".*cgi-bin.*" -d server_root/proxy-serverid/config

其中

    • url-list 是需要废止的 URL 列表该选项可用于提供 URL 列表。
    • -x e 是用于废止高速缓存数据库中匹配的 URL 的选项。
    • -x r 是用于删除高速缓存数据库中匹配的 URL 的选项。
    • reg_exp 是所使用的正则表达式
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

管理高速缓存垃圾收集

可以通过 cachegc 实用程序将可能已过期或因存在时间过久而不能在目录中高速缓存(根据高速缓存大小约束)的对象清理出高速缓存数据库。



确保使用 cachegc 实用程序时代理服务器实例中没有运行 CacheGC。


可按以下方式使用 cachegc 实用程序:

cachegc -f leave-fs-full-percent -u gc-high-margin-percent -l gc-low-margin-percent -e extra-margin-percent -d conf-dir

例如:

cachegc -f 50 -u 80 -l 60 -e 5 -d server_root/proxy-serverid/config

其中

    • leave-fs-full-percent 确定高速缓存分区大小的百分比,低于该值时将不进行垃圾收集
    • gc-high-margin-percent 控制最大高速缓存大小的百分比,达到该值时即会触发垃圾收集
    • gc-low-margin-percent 控制作为垃圾收集器目标的最大高速缓存大小的百分比
    • extra-margin-percent 由垃圾收集器用来确定要删除的高速缓存的百分比。
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config

管理批量更新

bu 实用程序用于更新高速缓存,它在两种模式下工作。在第一种模式下,该实用程序循环遍历高速缓存数据库并通过发送对每个 URL 的 HTTP 请求更新高速缓存中存在的所有 URL。在第二种模式中,该实用程序从给定 URL 开始对从该 URL 到所指定深度的 URL 的所有链接执行广度优先遍历,获取页面并将其置于高速缓存中。bu 是一种符合 RFC 标准的爬虫程序。

bu -n hostname -p port -t time-lmt -f contact-address -s sleep-time -o object -r n -d conf-dir

例如:

bu -n phoenix -p 80 -t 3600 -f admin@phoenix.com -s 60 -o nova -r n -d server_root/proxy-serverid/config

其中

    • hostname 是运行代理服务器的机器的主机名。默认值为 localhost。
    • port 是代理服务器运行时所使用的端口。默认端口是 8080
    • time-lmt 是实用程序运行的时间限制
    • contact-address 确定将在 bu 发送来的 HTTP 请求中发送的联系地址。默认值是 worm@proxy-name
    • sleep-time 是两次连续请求间的休眠时间。默认值为 5 秒。
    • object 是在当前正在执行的 bu.conf 中指定的对象
    • -r n 选项确定是否遵循 robot.txt 策略。默认值为 y
    • conf-dir 是代理服务器实例的配置目录。它位于以下路径 server_root/proxy-serverid/config


使用 Internet 高速缓存协议 (ICP)

关于 ICP

Internet 高速缓存协议 (ICP) 是一种对象位置协议,通过该协议各高速缓存可以彼此通信。高速缓存可以就是否存在高速缓存的 URL 及这些 URL 的最佳检索位置,使用 ICP 发送查询和回复。在典型的 ICP 交换中,一个高速缓存会将有关特定 URL 的 ICP 查询发送给邻近的所有高速缓存。然后,这些高速缓存将回送 ICP 回复,指出其是否包含该 URL。如果这些高速缓存不包含该 URL,则回送 "MISS"。如果的确包含该 URL,则回送 "HIT"。

通过 ICP 邻域进行路由选择

ICP 可用于位于不同管理域中的代理服务器间的通信。它使某个管理域中的代理服务器高速缓存能够与另一个管理域中的代理服务器高速缓存进行通信。如果若干个代理服务器想进行通信,但无法全部从一个主代理服务器进行配置(因为它们处于代理服务器阵列中),则在这种情况下使用 ICP 进行通信是有效的。图 12-3 显示了不同管理域中代理服务器间的 ICP 交换。

通过 ICP 彼此进行通信的代理服务器称作近邻。一个 ICP 邻域中最多只能有 64 个近邻。ICP 邻域中有两种类型的近邻:父代理服务器同级代理服务器。如果其他近邻都没有请求的 URL,则只有父代理服务器方可访问远程服务器。ICP 邻域可以没有父代理服务器,也可以有一个以上的父代理服务器。ICP 邻域中的任何父代理服务器近邻均被视为同级代理服务器。除非同级代理服务器被标记为 ICP 的默认路由并且 ICP 使用该默认路由,否则,同级代理服务器不能从远程服务器检索文档。

可以使用轮询轮次确定近邻接收查询的顺序。一个轮询轮次是一个 ICP 查询循环。必须为每个近邻分配一个轮询轮次。如果在轮询轮次一中配置了所有近邻,将在一个循环中查询所有近邻。也就是说,将同时查询所有近邻。如果将一些近邻配置在轮询轮次 2 中,将首先查询轮询轮次一中的所有近邻,如果没有近邻返回 "HIT",将查询轮询轮次二中的所有代理服务器。轮询轮次的最大值是二。

因为 ICP 父代理服务器可能成为网络瓶颈,所有可以使用轮询轮次来减轻其负载。一个常用的设置是将所有同级代理服务器配置在轮询轮次一中,而将所有父代理服务器配置在轮询轮次二中。这样当本地代理服务器请求 URL 时,请求将首先转到邻域中的所有同级代理服务器。如果所有同级代理服务器都没有请求的 URL,将把请求转给父代理服务器。如果父代理服务器也没有请求的 URL,将从远程服务器进行检索。

ICP 邻域中的每个近邻必须至少有一个运行着的 ICP 服务器。如果某个近邻没有运行着的 ICP 服务器,将无法响应来自其近邻的 ICP 请求。如果 ICP 服务器没有运行,启用代理服务器上的 ICP 时将会启动 ICP 服务器。

图 12-3 ICP 交换

ICP 交换图示

设置 ICP
    • 向 ICP 邻域添加父代理服务器。(只有在想要让父代理服务器位于 ICP 领域中时才需要执行此步骤。) 有关向 ICP 邻域添加父代理服务器的更多信息,参见向 ICP 邻域添加父代理服务器
    • 启用 ICP。有关启用 ICP 的信息,参见启用 ICP
    • 如果代理服务器的 ICP 邻域中有同级代理服务器或父代理服务器,请通过 ICP 邻域启用路由选择。有关通过 ICP 邻域启用路由选择的更多信息,参见启用通过 ICP 邻域进行路由选择

向 ICP 邻域添加父代理服务器

向 ICP 邻域添加父代理服务器
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 在页面的 "Parent List" 部分中单击 "Add" 按钮。将显示 "ICP Parent" 页面。
    • 在 "Machine Address" 字段中输入要向 ICP 邻域添加的父代理服务器的 IP 地址或主机名。
    • 在 "ICP Port" 字段中输入父代理服务器侦听 ICP 消息所使用的端口号。
    • 在 "Multicast Address" 字段中,可以输入父代理服务器侦听的多址广播地址。多址广播地址是指多个服务器可以侦听的 IP 地址。代理服务器可以使用多址广播地址将一个查询发送到正在侦听该多址广播地址的所有近邻均可见的网络,从而不必将查询分别发送给每个近邻。使用多址广播是可选的。



    不同轮询轮次中的近邻不能侦听同一多址广播地址。


    • 在 "TTL" 字段中,输入要将多址广播消息转发到的子网数。如果 "TTL" 的设置为 1,只会将多址广播消息转发到本地子网。如果 "TTL" 为 2,消息将发往隔一级的所有子网,依此类推。



    多址广播使得两个不相关的近邻可以相互发送 ICP 消息。因此,如果想要阻止不相关的近邻接收来自 ICP 邻域中的代理服务器的 ICP 消息,应在 "TTL" 字段中设置较低的 TTL 值。


    • 在 "Proxy Port" 字段中,输入父代理服务器的端口。
    • 在 "Polling Round" 下拉式列表中,选择希望父代理服务器所处的轮询轮次。默认轮询轮次为 1。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

在 ICP 邻域中编辑父代理服务器配置

编辑父代理服务器配置
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 单击要编辑的父代理服务器旁的单选按钮。
    • 单击 "Edit" 按钮。
    • 修改相应的信息。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

删除 ICP 邻域中的父代理服务器

删除 ICP 邻域中的父代理服务器
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 单击要删除的父代理服务器旁的单选按钮。
    • 单击 "Delete"按钮。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

向 ICP 邻域添加同级代理服务器

向 ICP 邻域添加同级代理服务器
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 在页面的 "Sibling List" 部分中单击 "Add" 按钮。将显示 "ICP Sibling" 页面。
    • 在 "Machine Address" 字段中,输入要向 ICP 邻域添加的同级代理服务器的 IP 地址或主机名。
    • 在 "Port" 字段中,输入同级代理服务器侦听 ICP 消息所使用的端口号。
    • 在 "Multicast Address" 字段中,输入同级代理服务器侦听的多址广播地址。多址广播地址是指多个服务器可以侦听的 IP 地址。代理服务器可以使用多址广播地址将一个查询发送到正在侦听该多址广播地址的所有近邻均可见的网络,从而不必将查询分别发送给每个近邻。



    不同轮询轮次中的近邻不应侦听同一多址广播地址。


    • 在 "TTL" 字段中,输入要将多址广播消息转发到的子网数。如果 "TTL" 的设置为 1,只会将多址广播消息转发到本地子网。如果 "TTL" 为 2,消息将发往隔一级的所有子网。



    多址广播使得两个不相关的近邻可以相互发送 ICP 消息。因此,如果想要阻止不相关的近邻接收来自 ICP 邻域中的代理服务器的 ICP 消息,应在 "TTL" 字段中设置较低的 TTL 值。


    • 在 "Proxy Port" 字段中,输入同级代理服务器的端口。
    • 在 "Polling Round" 下拉式列表中,选择希望同级代理服务器所处的轮询轮次。默认轮询轮次为 1。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

在 ICP 邻域中编辑同级代理服务器配置

编辑同级代理服务器配置
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 单击要编辑的同级代理服务器旁的单选按钮。
    • 单击 "Edit" 按钮。
    • 修改相应的信息。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

删除 ICP 邻域中的同级代理服务器

删除 ICP 邻域中的同级代理服务器
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 单击要删除的同级代理服务器旁的单选按钮。
    • 单击 "Delete" 按钮。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

配置单个 ICP 近邻

需要在 ICP 邻域中配置每个近邻(或称本地代理服务器)。

在 ICP 邻域中配置本地代理服务器
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 选择 "Configure ICP" 链接。将显示 "Configure ICP" 页面。
    • 在 "Binding Address" 字段中,输入近邻服务器将要绑定到的 IP 地址。
    • 在 "Port" 字段中,输入近邻服务器侦听 ICP 所使用的端口号。
    • 在 "Multicast Address" 字段中,输入近邻侦听的多址广播地址。多址广播地址是指多个服务器可以侦听的 IP 地址。代理服务器可以使用多址广播地址将一个查询发送到正在侦听该多址广播地址的所有近邻均可见的网络,从而不必将查询分别发送给每个近邻。

    如果同时为近邻指定了多址广播地址和绑定地址,近邻将使用绑定地址发送回复,使用多址广播进行侦听。如果既未指定绑定地址也未指定多址广播地址,操作系统将决定使用哪个地址发送数据。

    • 在 "Default Route" 字段中,输入代理服务器的名称或 IP 地址,当邻近代理均未做出“命中”响应时,近邻应将请求路由到此代理服务器。如果在此字段中输入文字 origin,或将其留为空白,则默认情况下将会路由至源服务器。



    如果从 "No Hit Behavior" 下拉式列表中选择 "first responding parent",在 "Default Route" 字段中输入的路由将不起作用。如果选择默认的无命中行为,代理服务器将只使用该路由。


    • 在第二个 "Port" 字段中,输入默认路由机器的端口号,即在 "Default Route" 字段中输入的值。
    • 在 "On No Hits, Route Through" 下拉式列表中,选择当 ICP 邻域中所有同级代理服务器的高速缓存中均无请求的 URL 时近邻的行为。可以选择:
      • first responding parent。近邻将通过最先做出“未命中”响应的父代理服务器检索请求的 URL
      • default route近邻将通过在 "Default Route" 字段中指定的机器检索请求的 URL。
    • 在 "Server Count" 字段中,输入将要服务于 ICP 请求的进程数。
    • 在 "Timeout" 字段中,输入每一轮次中近邻等待 ICP 响应的最大时间长度。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

启用 ICP

启用 ICP
    • 访问 Server Manager 并单击 "Preferences" 选项卡。
    • 单击 "Configure System Preferences" 链接。将显示 "Configure System Preferences" 页面。
    • 选择对应于 ICP 的 "Yes" 单选按钮。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

启用通过 ICP 邻域进行路由选择

启用通过 ICP 邻域进行路由选择
    • 访问 Server Manager 并单击 "Routing" 选项卡。
    • 单击 "Set Routing Preferences" 链接。将显示 "Set Routing Preferences" 页面。
    • 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮来输入正则表达式,然后单击 "OK"。
    • 选择文本 "Route Through" 旁的单选按钮。
    • 选中 "ICP" 旁的复选框。
    • 如果希望客户机直接从拥有文档的 ICP 近邻检索文档,而不是通过另一个近邻来获取文档,请选中文本 "redirect" 旁的复选框。
    • 单击 "OK"。


      注意

      当前任何客户机都不支持重定向,所以目前不要使用该特性。




只有当代理服务器在 ICP 邻域中有其他同级代理服务器或父代理服务器时,才需要启用通过 ICP 邻域进行路由选择。如果代理服务器是另一个代理服务器的父代理服务器,并且它本身没有任何同级代理服务器或父代理服务器,则只需要为该代理服务器启用 ICP,而不需要启用通过 ICP 邻域进行路由选择。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。


使用代理服务器阵列

关于代理服务器阵列

可以通过分布式高速缓存的代理服务器阵列将多个代理服务器作为一个高速缓存来使用。也就是说,阵列中的每个代理服务器都将包含不同的高速缓存的 URL,浏览器或下游代理服务器可以检索这些 URL。代理服务器阵列可以防止有多个代理服务器时经常发生的高速缓存重复。代理服务器阵列通过基于散列的路由选择将请求路由到代理服务器阵列中正确的高速缓存中。

代理服务器阵列也允许增量式可伸缩性。也就是说,如果决定将另一个代理服务器添加到代理服务器阵列,每个成员的高速缓存都不会失效。只会将每个成员高速缓存中的 URL 的 1/n(其中 n 是阵列中的代理服务器数)重新分配给其他成员。

通过代理服务器阵列进行路由选择

对于通过代理服务器阵列的每个请求,散列函数将根据请求的 URL、代理服务器的名称及代理服务器的负载因子为阵列中的每个代理服务器分配一个分数,然后将请求路由到分数最高的代理服务器。

因为 URL 请求可能来自客户机和代理服务器,所以通过代理服务器阵列进行的路由选择有两种类型:客户机到代理服务器路由选择代理服务器到代理服务器路由选择

在客户机到代理服务器路由选择中,客户机使用代理服务器自动配置 (PAC) 机制来确定通过哪个代理服务器。不过,客户机不是使用标准的 PAC 文件,而是使用一种特殊的 PAC 文件,该文件通过计算散列算法来为请求的 URL 确定合适的路由,图 12-4 显示了客户机到代理服务器的路由选择。

图 12-4 中,代理服务器阵列的每个成员均加载并轮询主代理服务器,以确定是否有对 PAT 文件的更新。客户机一旦下载了 PAC 文件,则只有在配置发生变化时才需要再次下载该文件。客户机通常在重新启动时下载 PAC 文件。

代理服务器可以根据通过管理界面建立的代理服务器阵列成员资格表 (PAT) 规格自动生成特殊的 PAC 文件。

在代理服务器到代理服务器路由选择中,代理服务器使用 PAT(代理服务器阵列表)文件而不是客户机使用的 PAC 文件来计算散列算法。PAT 文件是一种 ASCII 文件,它包含有关代理服务器阵列的信息,如代理服务器的机器名称、IP 地址、端口、负载因子、高速缓存大小等。要在服务器上计算散列算法,使用 PAT 文件比使用 PAC 文件(该文件是一种 JavaScript 文件,必须在运行时对其进行解析)要高效得多。不过,大多数客户机无法识别 PAT 文件格式,因此必须使用 PAC 文件。图 12-5 显示了代理服务器到代理服务器路由选择。

将在代理服务器阵列中的一个代理服务器(即主代理服务器)上创建 PAT 文件。代理服务器管理员必须确定将哪一个代理服务器作为主代理服务器。管理员可以通过此主代理服务器更改 PAT 文件,之后代理服务器阵列的所有其他成员可以手动或自动方式轮询主代理服务器来获悉这些更改。可以将每个成员都配置为自动根据这些更改生成 PAC 文件。

也可以将代理服务器阵列链接在一起,进行分层结构路由选择。如果代理服务器将收到的请求通过上游代理服务器阵列进行路由,则该阵列即为父代理服务器阵列。父代理服务器阵列是代理服务器经过的代理服务器阵列。也就是说,如果客户机从代理服务器 X 请求文档,而代理服务器 X 没有该文档,它将把请求发送给代理服务器阵列 Y,而不是直接将请求发送到远程服务器。因此,代理服务器阵列 Y 是一个父代理服务器阵列。在图 12-5 中,代理服务器阵列 1 是代理服务器阵列 2 的父代理服务器阵列。代理服务器阵列 2 的成员会加载并进行轮询,以确定是否有对父代理服务器阵列 PAT 文件的更新。它通常轮询父代理服务器阵列中的主代理服务器。将使用下载的 PAT 文件计算请求的 URL 的散列算法,之后代理服务器阵列 2 的成员就可以从代理服务器阵列 1 中分数最高的代理服务器中检索请求的 URL。在图 12-5 中,对于客户机请求的 URL,代理服务器 B 的分数最高。

图 12-4 客户机到代理服务器路由选择

客户机到代理服务器路由选择图示

图 12-5 代理服务器到代理服务器路由选择

代理服务器到代理服务器路由选择图示

设置代理服务器阵列
    • 在主代理服务器中执行以下步骤:
      • 使用 PAT 文件生成 PAC 文件。如果使用客户机到代理服务器路由选择,只需生成 PAC 文件即可。有关使用 PAT 文件生成 PAC 文件的更多信息,参见使用 PAT 文件生成 PAC 文件
      • 创建 PAT 映射以将 URL "/pat" 映射到 PAT 文件。
    • 在每个非主代理服务器中执行以下步骤:


    1. 如果代理服务器阵列要通过父代理服务器阵列进行路由,则还需要启用父代理服务器阵列并将每个成员配置为通过父代理服务器阵列进行路由以获得所需的 URL。有关父代理服务器阵列的更多信息,参见通过父代理服务器阵列进行路由选择


创建代理服务器阵列成员列表

只应在阵列的主代理服务器中创建和更新代理服务器阵列成员列表。代理服务器阵列成员列表只需创建一次,但可以随时对其进行修改。通过创建代理服务器阵列成员列表,将生成分布到阵列中的所有代理服务器及任何下游代理服务器的 PAT 文件。



注意

只应通过阵列中的主代理服务器对代理服务器阵列成员列表进行更改或添加。阵列的所有其他成员只能读取成员列表。


    • 访问 Server Manager 并单击 "Caching" 选项卡
    • 单击 "Configure Proxy Array" 链接。将显示 "Configure Proxy Array" 页面。
    • 在 "Array name" 字段中,输入阵列的名称。
    • 在 "Reload Configuration Every" 字段中,输入 PAT 文件各次轮询间隔的分钟数。
    • 单击 "Array Enabled" 复选框。
    • 单击 "Create" 按钮。


      务必在开始向成员列表添加成员之前单击 "OK"。




      代理服务器阵列创建后 "Create" 按钮将变成 "OK" 按钮。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 为代理服务器阵列中的每个成员输入以下内容,然后单击 "OK":
      • Name。要添加到成员列表中的代理服务器的名称
      • IP Address。要添加到成员列表中的代理服务器的 IP 地址
      • Port。此为成员针对 PAT 文件进行轮询所使用的端口。
      • Load Factor。一个反映应通过成员进行路由的相对负载的整数。
      • Status。成员的状态。此值可以为 "on" 或 "off"。如果禁用了某个代理服务器阵列成员,将会通过另一成员再次路由该成员的请求。


        添加其他成员前应先添加主成员。




        为要添加的每个代理服务器阵列成员输入信息后,请务必单击 "OK"。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

编辑代理服务器阵列成员列表信息

可以随时更改代理服务器阵列成员列表中各成员的信息。只能通过主代理服务器编辑代理服务器阵列成员列表。



注意

只应通过阵列中的主代理服务器对代理服务器阵列成员列表进行更改或添加。如果通过阵列的任何其他成员修改此列表,所有更改都将丢失。


编辑代理服务器阵列中任何成员的成员列表信息
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array" 链接。将显示 "Configure Proxy Array" 页面。
    • 在 "Member" 列表中,选择要编辑的成员旁的单选按钮。
    • 单击 "Edit" 按钮。将显示 "Configure Proxy Array Member" 页面。
    • 编辑相应的信息。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。



    如果想使更改生效并将其分布到代理服务器阵列的各个成员,需要更新 "Configure Proxy Array" 页面中的 "Configuration ID",然后单击 "OK"。要更新配置 ID,只需将其值增加一即可。


删除代理服务器阵列成员

如果删除代理服务器阵列成员,将把其从代理服务器阵列中删除。只能通过主代理服务器删除代理服务器阵列成员。



注意

只应通过阵列中的主代理服务器对代理服务器阵列成员列表进行更改或添加。如果通过阵列的任何其他成员修改此列表,所有更改都将丢失。


删除代理服务器阵列的成员
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array" 链接。将显示 "Configure Proxy Array" 页面。
    • 在 "Member" 列表中,选择要删除的成员旁的单选按钮。
    • 单击 "Delete" 按钮。


      如果想使更改生效并将其分布到代理服务器阵列的各个成员,需要更新 "Configure Proxy Array" 页面中的 "Configuration ID",然后单击 "OK"。要更新配置 ID,只需将其值增加一即可。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

配置代理服务器阵列成员

只需对代理服务器阵列中的每个成员进行一次配置,而且必须通过成员本身进行配置。不能通过阵列的某个成员配置另一个成员。还需要配置主代理服务器。

配置代理服务器阵列的每个成员
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array Member" 链接。将显示 "Configure Proxy Array Member" 页面。
    • 在 "Proxy Array" 部分中,通过选择相应的单选按钮来指示成员是否需要轮询 PAT 文件。选项包括:
      • Non-Master Member。如果配置的成员是主代理服务器,应选择此选项。任何不是主代理服务器的代理服务器阵列成员均需轮询 PAT 文件,以从主代理服务器检索它。
      • Master Member。如果配置的是主代理服务器,应选择此选项。如果配置的是主代理服务器,PAT 文件将是本地文件,不需要进行轮询。
    • 在 "Poll Host" 字段中输入将要针对 PAT 文件进行轮询的主代理服务器的名称。
    • 在 "Port" 字段中输入主代理服务器接受 HTTP 请求的端口。
    • 在 "URL" 字段中输入主代理服务器上 PAT 文件的 URL。如果已在主代理服务器上创建了一个将 PAT 文件映射到 URL /pat 的 PAT 映射,应在 "URL" 字段中输入 /pat
    • 在 "Headers File" 字段中,输入含有任何特殊标头的文件的完整路径名,这些标头必须与 PAT 文件的 HTTP 请求(如验证信息)一起发送。该字段为可选字段。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

启用通过代理服务器阵列进行路由选择

启用通过代理服务器阵列进行路由选择
    • 访问 Server Manager 并单击 "Routing" 选项卡。
    • 单击 "Set Routing Preferences" 链接。将显示 "Set Routing Preferences" 页面。
    • 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮来输入正则表达式,然后单击 "OK"。
    • 选择 "Route Through" 选项。
    • 选择代理服务器阵列和/或父代理服务器阵列的复选框。
    • 如果选择通过代理服务器阵列进行路由并要将请求重定向到另一个 URL,请选中 "redirect" 复选框。重定向是指如果代理服务器阵列的成员收到不应由其提供服务的请求,它会告知客户机应联系哪个代理服务器来处理该请求。
    • 单击 "OK"。


      只有当要配置的代理服务器是代理服务器阵列的成员时,才可以启用代理服务器阵列路由选择。如果存在父代理服务器阵列,就只能启用父代理服务器路由选择。两个路由选择选项互不相关。




      注意

      当前任何客户机都不支持重定向,所以目前不应使用该特性。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

启用代理服务器阵列

启用代理服务器阵列
    • 访问 Server Manager 并单击 "Preferences" 选项卡。
    • 单击 "Configure System Preferences" 链接。将显示 "Configure System Preferences" 页面。
    • 单击与要启用的阵列(普通代理服务器阵列或父代理服务器阵列)类型对应的 "Yes" 选项。
    • 单击 "OK"。


      如果不通过代理服务器阵列进行路由选择,则在禁用代理服务器阵列选项前应确保所有客户机都使用特殊的 PAC 文件正确地进行路由。如果禁用代理服务器阵列选项,则在 "Set Routing Preferences" 页面中应已设置了有效的备用路由选择选项,如显式代理服务器或直接连接。


    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

重定向代理服务器阵列中的请求

如果选择通过代理服务器阵列进行路由,需要指定是否要将请求重定向到另一个 URL。重定向是指如果代理服务器阵列的成员收到不应由其提供服务的请求,它会告知客户机应联系哪个代理服务器来处理该请求。



注意

当前任何客户机都不支持重定向,所以目前不应使用该特性。


使用 PAT 文件生成 PAC 文件

因为大多数客户机无法识别 PAT 文件格式,所以在客户机到代理服务器路由选择中,客户机使用代理服务器自动配置 (PAC) 机制来接收有关通过的代理服务器的信息。不过,客户机使用的不是标准的 PAC 文件,而是源自 PAT 文件的一种特殊的 PAC 文件。这种特殊的 PAC 文件通过计算散列算法来为请求的 URL 确定合适的路由。

可以使用 PAT 文件以手动或自动方式生成 PAC 文件。如果通过代理服务器阵列的某个成员手动生成 PAC 文件,该成员将立即根据 PAT 文件中的当前信息重新生成 PAC 文件。如果配置代理服务器阵列成员来自动生成 PAC 文件,该成员将在每次检测到 PAT 文件的修改版本后自动重新生成该文件。



如果没有为代理服务器使用代理服务器阵列特性,则应使用 "Create / Edit Autoconfiguration File" 页面生成 PAC 文件。有关更多信息,参见使用客户机自动配置文件


使用 PAT 文件手动生成 PAC 文件


只能通过主代理服务器生成 PAC 文件。


 
通过 PAT 文件手动生成 PAC 文件
    • 访问主代理服务器的 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array" 链接。将显示 "Configure Proxy Array" 页面。
    • 单击 "Generate PAC" 按钮。将显示 "PAC Generation" 页面。
    • 如果要在 PAC 文件中使用自定义逻辑,请在 "Custom logic file" 字段中输入文件名称,该文件包含要在生成 PAC 文件时包括的自定义逻辑。将把此逻辑插入到 FindProxyForURL 函数中代理服务器阵列选择逻辑前。此函数通常用于不需要经过代理服务器阵列的本地请求。

    如果已在 "Configure Proxy Array Member" 页面中输入了自定义逻辑文件,将会用该信息填充此字段。需要时可以编辑自定义逻辑文件名,所做的更改还将传送到 "Configure Proxy Array Member" 页面。

    • 在 "Default Route" 字段中输入当阵列中的代理服务器不可用时客户机应采用的路由。

    如果已在 "Configure Proxy Array Member" 页面中输入了默认路由,将会用该信息填充此字段。需要时可以编辑默认路由,所做的更改还将传送到 "Configure Proxy Array Member" 页面。

    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。
使用 PAT 文件自动生成 PAC 文件
每次检测到更改时使用 PAT 文件自动生成 PAC 文件
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array Member" 链接。将显示 "Configure Proxy Array Member" 页面。
    • 选中 "Auto-generate PAC File" 复选框。
    • 如果要在 PAC 文件中使用自定义逻辑,请在 "Custom logic file" 字段中输入文件名称,该文件包含要在生成 PAC 文件时包括的自定义逻辑。将把此逻辑插入到 FindProxyForURL 函数中代理服务器阵列选择逻辑前。

    如果已在 "Configure Proxy Array" 页面中输入并保存了自定义逻辑文件,将会用该信息填充此字段。需要时可以编辑自定义逻辑文件名,所做的更改还将传送到 "Configure Proxy Array" 页面。

    • 在 "Default Route" 字段中输入当阵列中的代理服务器不可用时客户机应采用的路由。
    • 如果已在 "Configure Proxy Array" 页面中输入并保存了默认路由,将会用该信息填充此字段。需要时可以编辑默认路由,所做的更改还将传送到 "Configure Proxy Array" 页面。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。

通过父代理服务器阵列进行路由选择

可以将代理服务器或代理服务器阵列成员配置为通过上游父代理服务器阵列进行路由,而不是直接转至远程服务器。

将代理服务器或代理服务器阵列成员配置为通过父代理服务器阵列进行路由
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "Configure Proxy Array Member" 链接。将显示 "Configure Proxy Array Member" 页面。
    • 在页面 "Parent Array" 部分的 "Poll Host" 字段中,输入父代理服务器阵列中将针对 PAT 文件对其进行轮询的代理服务器的主机名。此代理服务器通常是父代理服务器阵列的主代理服务器。
    • 在页面 "Parent Array" 部分的 "Port" 字段中,输入父代理服务器阵列中将针对 PAT 文件对其进行轮询的代理服务器的 "Port" 号。
    • 在 "URL" 字段中输入主代理服务器上 PAT 文件的 URL。如果已在主代理服务器上创建了 PAT 映射,则应在此 "URL" 字段中输入该映射。
    • 在表单 "Parent Array" 部分的 "Headers File" 字段中,输入含有任何特殊标头的文件的完整路径名,这些标头必须与 PAT 文件的 HTTP 请求(如验证信息)一起发送。该字段为可选字段。
    • 单击 "OK"。
    • 单击 "Restart Required"。将显示 "Apply Changes" 页面。
    • 单击 "Restart Proxy Server" 按钮以应用更改。
查看父代理服务器阵列信息

如果代理服务器阵列是通过父代理服务器阵列进行路由选择,则需要有关父代理服务器阵列成员的信息。此信息以 PAT 文件形式从父代理服务器阵列发出。此 PAT 文件中的信息将显示在 "View Parent Array Configuration" 页面中。

查看父代理服务器阵列信息
    • 访问 Server Manager 并单击 "Caching" 选项卡。
    • 单击 "View Parent Array Configuration" 链接。将显示 "View Parent Array Configuration" 页面。
    • 查看信息。


上一页      目录      索引      下一页     


文件号码 819-3162。版权所有 2005 Sun Microsystems, Inc. 保留所有权利。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值