ADC

集成缓存

集成缓存在 NetScaler 设备上提供内存存储,无需往返原始服务器即可向用户提供 Web 内容。对于静态内容,集成缓存几乎不需要初始设置。启用集成缓存功能并执行基本设置(例如,确定允许缓存使用的 NetScaler 设备内存量)后,集成缓存使用内置策略来存储和提供特定类型的静态内容,包括简单的网页和图像文件。您还可以将集成缓存配置为存储和提供 Web 和应用程序服务器标记为不可缓存的动态内容(例如,数据库记录和股票报价)。

注意:

术语集成缓存可以与 AppCache 互换使用;请注意,从功能角度来看,两个术语的含义相同。

当请求或响应与内置策略或您创建的策略中指定的规则(逻辑表达式)匹配时。NetScaler 设备执行与策略相关的操作。默认情况下,所有策略都将缓存的对象存储在中并从默认内容组中检索它们。您可以为不同类型的内容创建自己的内容组。

要使设备能够查找内容组中的缓存对象,可以配置选择器。选择器将缓存的对象与表达式进行匹配,或者您可以指定用于在内容组中查找对象的参数。如果您按照 Citrix 的建议使用选择器,请先对其进行配置,以便在配置内容组时可以指定选择器。接下来,设置要添加的任何内容组,以便在配置策略时它们可用。要完成初始配置,请通过将每个策略绑定到全局绑定点或虚拟服务器来创建策略库。或者,您可以绑定一个可以从其他策略库调用的标签。

可以在预定缓存过期之前使用预加载缓存对象方法来改善集成缓存。要管理缓存数据的处理,您可以配置插入到响应中的缓存相关标头。集成缓存还可以充当其他缓存服务器的转发代理。

注意:

集成缓存需要对 HTTP 请求和响应有一定的了解。有关 HTTP 数据结构的信息,请参阅 实时 HTTP 标头 ,网址为 "<http://livehttpheaders.mozdev.org/>."

集成缓存的工作原理

集成缓存监视流经 NetScaler 设备的 HTTP 和 SQL 请求,并将这些请求与存储的策略进行比较。根据结果,集成缓存功能要么在缓存中搜索响应,要么将请求转发到源服务器。对于 HTTP 请求,集成缓存用作缓存中的部分内容,以响应单字节范围和多部分字节范围请求。

如果客户端接受压缩内容,则会压缩缓存的数据。您可以为内容组配置过期时间,并可以有选择地过期内容组中的条目。

从集成缓存提供的数据是命中,而从源提供的数据是缓存未命中,如下表所述。

交易类型 规范
缓存命中 NetScaler 设备从缓存中提供的响应,包括:静态对象,例如图像文件和静态网页、200 个确定页面、203 个非权威回复页面、300 个多选页面、301 个永久移动页面、302 个已找到页面、304 个未修改页面,这些响应被称为正面响应。NetScaler 设备还缓存了以下负面响应:307 个临时重定向页面、403 个禁止页面、404 个未找到页面、410 个消失页面。为了进一步提高性能,您可以将 NetScaler 设备配置为缓存更多类型的内容。
可存储缓存丢失 如果丢失了可存储的缓存,NetScaler 设备会从源服务器获取响应,并将响应存储在缓存中,然后再将其提供给客户端。
不可存储的缓存丢失 不可存储的缓存丢失不适合缓存。默认情况下,任何包含以下状态代码的响应都是不可存储的缓存缺失:201、202、204、205、206 状态代码、除 403、404 和 410 之外的所有 4xx 代码、5xx 状态代码

注意:

要将动态缓存与您的应用程序基础架构集成,请使用 NITRO API 远程发出缓存命令。例如,您可以配置在更新数据库表时使缓存响应过期的触发器。

为确保缓存的响应与源服务器上的数据同步,您可以配置过期方法。当 NetScaler 设备收到与过期响应匹配的请求时,它会刷新来自源服务器的响应。

注意:

Citrix 建议您同步 NetScaler 设备和一个或多个后端服务器上的时间。

动态缓存的工作原理

动态缓存根据参数值对、字符串、字符串模式或其他数据评估 HTTP 请求和响应。例如,假设用户在错误报告应用程序中搜索 Bug 31231。浏览器代表用户发送以下请求:

    GET /mybugreportingsystem/mybugreport.dll?IssuePage&RecordId=31231&Template=view&TableId=1000

    Host: mycompany.net

    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008052906 Firefox/3.0

    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,\*/\*;q=0.8

    Accept-Language: en-us,en;q=0.5
<!--NeedCopy-->

在此示例中,此错误报告应用程序的 GET 请求始终包含以下参数:

  • IssuePage
  • RecordID
  • 模板
  • TableId

GET 请求不会更新或更改数据,因此您可以在缓存策略和选择器中配置这些参数,如下所示:

  • 您可以配置缓存策略,在 HTTP 请求中查找字符串 mybugreportingsystem 和 GET 方法。此策略将匹配请求定向到内容组以查找错误。
  • 在错误内容组中,您可以配置一个与各种参数值对相匹配的 hit 选择器,包括 IssuePage、RecordID 等。

注意

浏览器可以根据一个用户操作发送多个 GET 请求。以下是一系列三个单独的 GET 请求,当用户根据错误 ID 搜索错误时,浏览器会发出这些请求。

    GET /mybugreportingsystem/mybugreport.dll?IssuePage&RecordId=31231&Template=view&TableId=1000

    GET /mybugreportingsystem/mybugreport.dll?IssuePage&Template=viewbtns&RecordId=31231&TableId=1000

    GET /mybugreportingsystem/mybugreport.dll?IssuePage&Template=viewbody&RecordId=31231&tableid=1000
<!--NeedCopy-->

为了满足这些请求,会向用户的浏览器发送多个响应,用户看到的网页是响应的汇编。

如果用户更新错误报告,则必须使用来自源服务器的数据刷新缓存中的相应响应。当用户更新错误报告时,错误报告应用程序发出 HTTP POST 请求。在此示例中,您配置以下内容以确保 POST 请求在缓存中触发失效:

  • 一种请求时失效策略,用于查找字符串 mybugreportingsystem 和 POST HTTP 请求方法,并将匹配的请求定向到内容组以获取错误报告。
  • 用于根据 RecordID 参数过期缓存内容的错误报告的内容组的失效选择器。此参数出现在所有响应中,因此失效选择器可以使缓存中的所有相关项目过期。

以下摘录显示了更新示例错误报告的 POST 请求。

    POST /mybugreportingsystem/mybugreport.dll?TransitionForm HTTP/1.1\r\n

    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.23 [en]\r\n

    Host: mybugreportingsystem\r\n

    Cookie:ttSearch.134=%23options%3Afalse%23active%23owner%3Afalse%23unowned%3Afalse%23submitter%3Afalse%23incsub%3Atrue;

    Cookie2: $Version=1\r\n

    . . .

    \r\n

    ProjectId=2&RecordId=31231&TableId=1000&TransitionId=1&Action=Update&CopyProjectId=0&ReloadForm=0&State=&RecordLockId=49873+issues+in+HTTP&F43. . .
<!--NeedCopy-->

当 NetScaler 设备收到此请求时,它会执行以下操作:

  • 将请求与失效策略相匹配。
  • 查找策略中命名的内容组。
  • 为该内容组应用失效选择器,使所有与 RecordID=31231 相匹配的响应过期。

当用户对此错误报告发出新的请求时,NetScaler 设备会转到原始服务器以获取与报告实例相关的所有响应的更新副本。它将响应存储在内容组中,然后将其提供给用户的浏览器,浏览器会重新汇编报告并显示报告。

配置集成缓存

要使用集成缓存,必须安装许可证并启用该功能。启用集成缓存后,NetScaler® 设备会自动缓存内置策略指定的静态对象,并生成有关缓存行为的统计信息。(内置策略在策略名称的初始位置带有下划线。)

即使内置策略足以满足您的情况,您也可能需要修改全局属性。例如,您可能需要修改分配给集成缓存的 NetScaler 设备内存量。

如果您想在更改设置之前观察缓存操作,请参阅“显示缓存对象和缓存统计信息”。“

注意:

NetScaler 缓存是一种内存存储,在您重新启动设备时会被清除。

安装集成缓存许可证

  • 需要集成缓存许可证。
  • 从 Citrix 获取许可证代码,转到命令行界面,然后登录。

在命令行界面上,将许可证文件复制到 /nsconfig/license 文件夹。

  • 使用以下命令重新启动 NetScaler 设备:

reboot

启用集成缓存:启用集成缓存 后,NetScaler 设备将开始缓存服务器响应。如果您尚未配置任何策略或内容组,则内置策略将缓存的对象存储在默认内容组中。

在命令提示窗口中,键入以下命令之一启用或禁用集成缓存:

enable ns feature IC

为缓存配置全局属性

全局属性应用于所有缓存数据。您可以通过标头插入来指定分配给集成缓存的 NetScaler 内存量。验证是否必须提供缓存对象的标准。缓存中允许的 POST 正文的最大长度、是否绕过 HTTP GET 请求的策略评估以及无法评估策略时应采取的操作。

缓存内存容量仅受硬件设备内存的限制。此外,nCore NetScaler 设备中的任何数据包引擎(所有传入 TCP 请求的中央分发中心)都可以识别 nCore NetScaler 设备中其他数据包引擎缓存的对象。

注意:

当默认全局内存限制设置为 0 并启用集成缓存 (IC) 功能时,设备不会缓存任何对象。对于缓存,必须显式配置全局内存限制。但是,如果您启用“设置身份验证、授权和审核参数 enableStaticPageCaching 选项,则设备中将配置一些默认内存。此内存不足以缓存大型对象,因此必须为 IC 分配更高的内存限制。您可以通过配置“set cache parameter –memLimit”命令来执行此操作。只有在保存配置并重新启动设备后,才会应用新设置。

您可以修改为缓存对象配置的全局内存限制。但是,当您将全局内存限制更新为低于现有值的值(例如,从 10 GB 到 4 GB)时,设备将继续使用内存限制。

这意味着,即使将集成缓存限制配置为某个值,实际使用的限制也可能更高。但是,当对象从缓存中移除时,就会释放出多余的内存。

show cache 参数命令的输出指示了配置的值(内存使用限制)和正在使用的实际值(内存使用限制(活动值))。

在命令提示符下,键入:

    set cache parameter [-memLimit <MBytes>] [-via <string>] [-verifyUsing <criterion>] [-maxPostLen <positiveInteger>] [-prefetchMaxPending <positiveInteger>] [-enableBypass(YES|NO)] [-undefAction (NOCACHE|RESET)]
<!--NeedCopy-->

通过 NetScaler GUI 启用集成缓存

导航到“系统”>“置”,单击“配置基本功能”,然后选择“集成缓存”。

使用 NetScaler GUI 配置缓存的全局设置

导航到“优化”>“集成缓存”,单击“更改缓存设 置”,然后配置缓存的全局设置。

为集成缓存设置内置内容组、模式集和策略

NetScaler 设备包含可用于缓存内容的内置集成缓存配置。该配置由一个名为 ctx_cg_poc 的内容组、一个名为 ctx_file_extensions 的模式集和一组集成缓存策略组成。在内容组 ctx_cg_poc 中,只缓存 500 KB 或更小的对象。内容缓存 86000 秒,内容组的内存限制为 512 MB。模式集是一个索引数组,由用于文件类型匹配的常见扩展名组成。

下表列出了内置的集成缓存策略。默认情况下,策略不绑定到任何绑定点。如果您希望 NetScaler 设备根据策略评估流量,则必须将策略绑定到绑定点。这些策略在 ctx_cg_poc 内容组中缓存对象。

集成缓存策略名称 策略规则
_cacheVPNStaticObjects HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE).CONTAINS_INDEX(“ctx_file_extensions”).BETWEEN(101,150)
_cacheTCPVPNStaticObjects HTTP.REQ.URL.ENDSWITH(“.css”)
_cacheOCVPNStaticObjects HTTP.REQ.URL.ENDSWITH(“.pdf”)
_cacheWFStaticObjects HTTP.REQ.URL.ENDSWITH(“.js”)
_mayNoCacheReq HTTP.RES.HEADER(“Content-Type”).CONTAINS(“application/x-javascript”)
_noCacheRest TRUE

刷新缓存配置

您可以刷新缓存组、缓存组或缓存对象定位器。以下是刷新缓存对象的命令。

在命令提示符下,键入:

flush cache contentgroup all

示例

        0x00000089bae000000004 DEFAULT GET  //1.1.1.1:80/html/index.html?name=hello
        0x00000089bae000000005 DEFAULT GET  //1.1.1.1:80/html/index.html?name=hi

        Flush cache contentGroup all
        done

`flush cache contentgroup <content group name>`
<!--NeedCopy-->

示例:

        0x00000089bae000000004 DEFAULT GET  //1.1.1.1:80/html/index.html?name=hello
        0x00000089bae000000005 DEFAULT GET  //1.1.1.1:80/html/index.html?name=hi

        Flush cache ob -| 0x00000089bae000000004
        done

`flush cache object (-locator <positive_integer> | (-url <URL> (-host <string> [-port <port>] [-groupName <string>] [-httpMethod ( GET | POST )])))`
<!--NeedCopy-->

示例:

        0x00000089bae000000006 DEFAULT GET //1.1.1.1:80/html/index.html

        flush cache ob -URL /html/index.html -host 1.1.1.1 -groupName DEFAULT
        done
<!--NeedCopy-->

使用 NetScaler GUI 刷新缓存配置

使用 NetScaler GUI 完成配置缓存刷新的步骤

  1. 导航至“优化”>“内容组”。
  2. 内容组详细信息 窗格中,单击 添加
  3. 在“创建缓存内容组”页面中,在“其他”选项卡下设置以下参数:
    1. 刷新缓存。选中该复选框可刷新缓存对象。
  4. 单击创建关闭

为各种场景配置集成缓存

以下部分介绍了 NetScaler 设备上针对各种场景的集成缓存配置。

从 NetScaler 9.2 版本开始,集成缓存有更多的内存用于缓存。集成缓存内存仅受硬件设备上可用内存的限制。您最多可以将 50% 的可用内存分配给集成缓存功能。

使用 CLI 设置缓存的内存分配

在命令提示符下,键入:

set cache parameter -memlimit <value>

注意:

集成缓存的默认全局内存限制为零。因此,即使您启用了集成缓存功能,在明确设置全局内存限制之前,NetScaler 设备也不会缓存任何对象。

以下部分将指导您在不同的情况下配置集成缓存。

注意:

NetScaler 设备的内存限制在设备启动时被标识。因此,对内存限制的任何更改都需要您重新启动设备以使更改适用于数据包引擎。

集成缓存已启用,缓存内存限制设置为非零

考虑一个场景,即启动设备,启用集成缓存功能并将全局内存限制设置为正数。您之前设置的内存将在启动过程中分配给集成缓存功能。您可能需要根据设备上的可用内存将内存限制更改为其他值。

使用 CLI 进行配置

  1. 显示缓存参数
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 500 MBytes
                Memory usage limit (active value): 500 MBytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->
  1. 设置非零内存限制

set cache parameter -memlimit 600

注意:

上述命令显示以下警告消息: 警告:要使用新的集成缓存内存限制,请保存配置并重新启动 NetScaler 设备。

  1. 保存配置

save config

  1. 在 shell 提示符下,运行以下命令以在配置文件中进行验证。

root@ns# cat /nsconfig/ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 600 -via NS-CACHE-9.3: 18 -verifyUsing HOSTNAME_AND_IP -maxPostLen 0 -enableBypass YES -undefAction NOCACHE

  1. 重新启动设备

root@ns# reboot

  1. 验证内存限制的新值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 600 MBytes
                Memory usage limit (active value): 600 MBytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

所有数据包引擎成功启动后,集成缓存功能将协商您配置的内存。如果设备无法使用配置的内存,则相应地分配内存。如果可用内存小于您分配的内存,则设备建议使用较小的数字。集成的缓存功能使用与活动值相同。

集成缓存已禁用,缓存内存限制设置为非零

在这种情况下,启动设备时,集成缓存功能被禁用,全局内存限制设置为正数。因此,在启动过程中,不会为集成缓存分配内存。

使用 CLI 进行配置

  1. 显示缓存参数
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 600 MBytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->
  1. 设置新的内存限制

set cache parameter -memlimit 500

注意:

前面的命令显示以下警告消息:警告: 功能未启用 [IC]

  1. 保存配置

save config

  1. 在 shell 提示符下,运行以下命令以在配置文件中进行验证

root@ns# cat /nsconfig/ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 500 -via NS-CACHE-9.3: 18 -verifyUsing HOSTNAME_AND_IP -maxPostLen 0 -enableBypass YES -undefAction NOCACHE

  1. 验证内存限制的新值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 500 MBytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->
  1. 启用集成缓存功能

enable ns feature IC

  1. 验证内存限制的新值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 500 Mbytes
                Memory usage limit (active value): 500 Mbytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

注意:

500 MB 的内存被分配给集成缓存功能。

  1. 保存配置以确保在重新启动设备时自动为该功能分配内存。

集成缓存已启用,缓存内存设置为零

在这种情况下,当您启动设备时,将启用集成缓存功能,并将全局内存限制设置为零。因此,在启动过程中,不会为集成缓存分配内存。

使用 CLI 进行配置

  1. 从 shell 提示符验证 ns.conf 文件中设置的内存限制

root@ns# cat ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 0 -via NS-CACHE-9.3: 18 -verifyUsing HOSTNAME_AND_IP -maxPostLen 4096 -enableBypass YES -undefAction NOCACHE

  1. 验证内存限制的值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 0 Mbytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

注意:

内存限制设置为 0 MB,不会为集成缓存功能分配内存。

  1. 设置内存限制以确保集成缓存功能可缓存对象

set cache parameter -memLimit 600

运行上述命令后,设备会协商集成缓存功能的内存,并将可用内存分配给该功能。这会导致设备在不重新启动设备的情况下缓存对象。

  1. 验证内存限制的值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 600 Mbytes
                Memory usage limit (active value): 600 Mbytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3:
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

注意:

600 MB 的内存被分配给集成缓存功能。

  1. 保存配置。确保在重新启动设备时自动为该功能分配内存。

  2. 从 shell 提示符验证 ns.conf 文件中设置的内存限制

root@ns# cat /nsconfig/ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 600 -via NS-CACHE-9.3: -verifyUsing HOSTNAME_AND_IP -maxPostLen 4096 -enableBypass YES -undefAction NOCACHE

集成缓存被禁用,缓存内存设置为零

在这种情况下,启动设备时,集成缓存功能被禁用,全局内存限制设置为零。因此,在启动过程中,不会为集成缓存分配内存。

使用 CLI 进行配置

  1. 从 shell 提示符验证 ns.conf 文件中设置的内存限制

root@ns# cat /nsconfig/ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 0 -via NS-CACHE-9.3: 18 -verifyUsing HOSTNAME_AND_IP -maxPostLen 4096 -enableBypass YES -undefAction NOCACHE

  1. 验证内存限制的值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 0 Mbytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3: 18
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

注意:

内存限制设置为 0 MB,不会为集成缓存功能分配内存。此外,当您运行任何缓存配置命令时,会显示以下警告消息: 警告:功能未启用 [IC]

  1. 启用集成缓存功能

enable ns feature IC

注意:

在此阶段,启用集成缓存功能时,设备不会为该功能分配内存。因此,没有对象被缓存到内存中。此外,当您运行任何缓存配置命令时,会显示以下警告消息: 没有为 IC 配置内存。使用 set cache 参数命令来设置内存限制。

  1. 设置内存限制以确保集成缓存功能可缓存对象

set cache parameter -memLimit 500

运行上述命令后,设备会协商集成缓存功能的内存,并将可用内存分配给该功能。这会导致设备在不重新启动设备的情况下缓存对象。

注意:

启用该功能和设置内存限制的顺序非常重要。如果您在启用该功能之前设置了内存限制,则会显示以下警告消息: 警告:功能未启用 [IC]

  1. 验证内存限制的值
        > show cache parameter
                Integrated cache global configuration:
                Memory usage limit: 500 Mbytes
                Memory usage limit (active value): 500 Mbytes
                Maximum value for Memory usage limit: 843 MBytes
                Via header: NS-CACHE-9.3:
                Verify cached object using: HOSTNAME_AND_IP
                Max POST body size to accumulate: 0 bytes
                Current outstanding prefetches: 0
                Max outstanding prefetches: 4294967295
                Treat NOCACHE policies as BYPASS policies: YES
                Global Undef Action: NOCACHE
<!--NeedCopy-->

注意:

500 MB 的内存被分配给集成缓存功能。

  1. 保存配置

save config

  1. 从 shell 提示符验证 ns.conf 文件中设置的内存限制

root@ns# cat /nsconfig/ns.conf | grep memLimit

  1. 更改内存限制

set cache parameter -memLimit 500 -via NS-CACHE-9.3: 18 -verifyUsing HOSTNAME_AND_IP -maxPostLen 4096 -enableBypass YES -undefAction NOCACHE

集成缓存