This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
提高缓存性能
您可以提高集成缓存的性能,包括处理对同一缓存数据的同时请求,避免与从源服务器刷新缓存响应相关的延迟,以及确保经常请求响应足够值得缓存。
减少闪光人群
当许多用户同时请求相同的数据时,会出现闪存人群。如果您将缓存配置为仅在下载整个对象后才提供单击,那么闪存人群中的请求可能会变为缓存未命中。
以下技术可以减少或消除闪光人群:
- PREFETCH:在正面响应到期之前刷新该响应,以确保它永远不会过时或处于非活动状态。有关更多信息,请参阅“在过期前刷新响应”部分。
- 缓存缓冲:当多个客户端收到来自源服务器的响应头时,开始向多个客户端提供响应,而不是等待下载整个响应。可同时下载响应的客户端数量的唯一限制是可用的系统资源。即使启动下载的客户端在下载完成之前停止,NetScaler 设备也会下载并提供响应。如果响应超过缓存大小或响应被分块,缓存将停止存储响应,但是向客户端提供的服务不会中断。
- 闪存缓存: 闪存缓存将请求排队,并且一次只允许一个请求到达服务器。
有关更多信息,请参阅“将请求排入缓存队列”部分。
在到期前刷新回复
为确保缓存的响应在需要时保持最新状态,PREFETCH 选项会在计算的到期时间之前刷新响应。预取间隔是在收到第一个客户机请求后计算的。从那时起,NetScaler 设备会按照您在 PREFETCH 参数中配置的时间间隔刷新缓存的响应。
此设置对于请求之间频繁更新的数据很有用。它不适用于否定回复(例如,404 消息)。
使用命令行界面为内容组配置预取
在命令提示符下,键入:
set cache contentgroup <name> -prefetch YES [-prefetchPeriod <seconds> | -prefetchPeriodMilliSec <milliseconds>] [-prefetchMaxPending <positiveInteger>]
*使用 GUI 为内容组配置预取
导航到“优化”>“集成缓存”>“内容组”,然后选择 内容组。
在 其他 选项卡的 Flash Crowd 和预回迁组中,选择 预回迁 选项,然后在挂起的预取的间隔和最大数量文本框中指定值。
将请求排队到缓存
Flash Cache 选项对同时到达的请求(闪存组)进行排队,检索响应,然后将其分发给请求在队列中的所有客户端。如果在此过程中响应变为不可缓存,则 NetScaler 设备将停止提供来自缓存的响应,而是将源服务器的响应提供给排队的客户端。如果响应不可用,则客户端会收到一条错误消息。
默认情况下,闪存缓存处于禁用状态。您无法对同一个内容组启用“每次投票”(PET) 和 Flash Cache。
Flash Cache 的一个缺点是,如果服务器回复错误(例如,快速修复的 404),则错误会分散到等待的客户端。
注意: 如果启用了 Flash Cache,则在某些情况下,NetScaler 设备无法将客户端请求中的 Accept-Encoding 标头与响应中的内容编码标头正确匹配。NetScaler 设备可以假设这些标头匹配并错误地提供命中。解决方法是,您可以将集成缓存策略配置为不允许向没有适当的 Accept-Encoding 标头的客户端提供单击量。
使用命令行界面启用 Flash Cache
在命令提示符下,键入:
set cache contentgroup <contentGroupName> -flashcache yes
使用 GUI 启用闪存缓存
导航到优化 > 集成缓存 > 内容组,然后选择内容组。
在“其他”选项卡的“Flash Crowd 和 Prefetch”组中,选择“预取”选项 。
在客户端停止下载后缓存响应
您可以设置 Quick Abort 参数以继续缓存响应,即使客户端在响应进入缓存之前暂停了请求。
如果下载的响应大小小于或等于快速中止大小,NetScaler 设备将停止下载响应。如果您将 Quick Abort 参数设置为 0,则所有下载都将停止。
使用命令行界面配置快速中止大小
在命令提示符下,键入:
set cache contentgroup <name> -quickAbortSize <integerInKBytes>
使用 GUI 配置快速中止大小
- 导航到优化 > 集成缓存 > 内容组,然后选择内容组。
- 在“内存”选项卡上,在“快速中止:如果超过文本框则继续缓存”中设置相关值。
在缓存之前需要最少的服务器命中次数
您可以配置必须在源服务器上找到响应才能被缓存的最小次数。如果缓存内存快速填满且命中率低于预期,则必须考虑增加最低单击率。
最小单击次数的默认值为 0。该值在第一次请求后缓存响应。
使用命令行界面配置缓存前所需的最小命中次数
在命令提示符下,键入:
set cache contentgroup <name> -minhits <positiveInteger>
使用 GUI 配置缓存前所需的最小命中数
- 导航到优化 > 集成缓存 > 内容组,然后选择内容组。
- 在 内存 选项卡上,如果单击次数小于文本框,请勿缓存中设置相关值。
性能优化示例
在此示例中,客户访问股票报价。股票报价是高度动态的。您可以将集成缓存配置为向并发客户提供相同的股票报价,而无需向源服务器发送多个请求。股票报价在下载给客户后到期,下一个请求从源服务器获取。这可确保报价始终是最新的。
以下任务概述描述了为股票报价应用程序配置缓存的步骤。
为股票报价应用程序配置缓存
为股票报价创建内容组
有关更多信息,请参阅“关于内容组”。“
为此内容组配置以下内容:
- 在“到期方法”选项卡上,选中“收到完整回复后过期”复选框。
- 在“其他”选项卡上,选中 Flash Cache 复选框,然后单击“创建”。
- 添加缓存策略以缓存股票报价。
更多信息请参阅“在集成缓存中配置策略”。“
为策略配置以下内容
- 在“操作”和“存储在组中”列表中,选择 CAC HE 并选择您在上一步中定义的组。
- 单击“添加”,然后在“添加表达式”对话框中配置一个用于识别股票报价请求的表达 式,例如:http.req.url.contains(“cgi-bin/stock-quote.pl”)
- 激活策略。
有关更多信息,请参阅“全局绑定集成缓存策略”。“ 在此示例中,您将此策略绑定到请求时间覆盖处理,并将优先级设置为较低的值。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.