`
nil-zhang
  • 浏览: 51767 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Traffic Server 缓存HTTP对象

阅读更多

Traffic Server响应来自客户端、源服务器以及通过配置选项和文件指定的缓存指示。

客户端指示

默认情况下,Traffic Server不缓存含有如下请求头部的对象:

  • Cache-Control: no-store头部
  • Cache-Control: no-cache头部

配置Traffic Server忽略Cache-Control: no-cache头部,见Configuring Traffic Server to Ignore Client no-cache Headers。

  • Cookie: 头部(文本对象)

默认情况下,Traffic Server缓存为包含cookies请求服务的响应对象(除了文本对象)。可以配置Traffic Server不缓存任何类型的cookies内容、缓存所有的cookies内容或者只缓存图片类型的cookies内容。更多信息见Caching Cookied Objects。

  • Authorization: 头部

配置Traffic Server忽略客户端的no-cache头部

默认情况下,Traffic Server严格遵守客户端Cache-Control: no-cache的指示。如果一个被请求的对象包含no-cache头部,即使它在缓存中仍然有效,Traffic Server也会将该请求传递给源服务器。可以配置Traffic Server忽略客户端no-cache指示,这样它将忽略客户端请求的no-cache头部并用缓存中的对象服务该请求。

配置Traffic Server忽略客户端的no-cache头部

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache.ignore_client_no_cache 设置这个变量为1来忽略客户端请求旁路缓存。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

源服务器指示

默认情况下,Traffic Server不缓存包含如下响应头部的对象:

  • Cache-Control: no-store头部
  • Cache-Control: private头部
  • WWW-Authenticate: 头部

要配置Traffic Server忽略WWW-Authenticate头部,见Configuring Traffic Server to Ignore WWW-Authenticate Headers。

  • Set-Cookie: 头部
  • Cache-Control: no-cache头部

要配置Traffic Server忽略no-cache头部,见Configuring Traffic Server to Ignore Server no-cache Headers。

  • Expires: 头部包含0值或过去时间

配置Traffic Server忽略服务器no-cache头部

默认情况下,Traffic Server严格遵守Cache-Control: no-cache指示。一个来自源服务器的带有no-cache头部的响应将不会被存储在缓存,该对象之前在缓存中的拷贝也会被删除。如果配置Traffic Server忽略no-cache头部,Traffic Server同时也忽略no-store头部。在大多数情况下是应该遵守no-cache指示的。

配置Traffic Server忽略服务器no-cache头部

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache.ignore_server_no_cache 设置这个变量为1来忽略服务器旁路缓存。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

配置Traffic Server忽略WWW-Authenticate头部

默认情况下,Traffic Server不缓存包含WWW-Authenticate响应头部的对象。WWW-Authenticate头部包含着客户端准备用来响应源服务器挑战应答的鉴定参数。

当配置Traffic Server忽略源服务器的WWW-Authenticate头部,所有带WWW-Authenticate头部的对象将被存储在缓存中被用来服务后来的请求,在大多数情况下,应该使用默认的不缓存带WWW-Authenticate头部对象的行为。只有在对HTTP 1.1深入理解的基础上,再尝试配置Traffic Server忽略服务器WWW-Authenticate头部。

配置Traffic Server忽略WWW-Authenticate头部

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache.ignore_authentication 设置这个变量为1来缓存带WWW-Authenticate头部的对象。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

配置指示

除了客户端和服务器的指示,Traffic Server同样响应配置选项和文件的指示。

可以按如下步骤来配置Traffic Server:

l  不缓存任何对象(见Disabling HTTP Object Caching)。

  • 缓存动态内容 — 对象的URL以.asp结尾或者包含问号(?)、分号(:)或者cgi。更多信息见Caching Dynamic Content。
  • 缓存响应Cookie: 头部的对象(见Caching Cookied Objects)。
  • 遵守cache.config文件中的从不缓存规则(见cache.config)。

关闭HTTP 对象缓存功能

默认情况下,Traffic Server缓存除了在cache.config文件中设置了从不缓存规则的所有对象。可以关闭HTTP 对象缓存功能,所有的对象都直接由源服务器服务而且从不缓存。

手动配置关闭HTTP对象缓存功能:

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache.http 设置这个变量为0来关闭HTTP对象缓存功能。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

缓存动态内容

一个以.asp结尾或包含问号(?)、分号(;)或者cgi的URL被认为是动态的。Traffic Server不缓存冬天内容。可以配置Traffic Server缓存动态内容,当然这只推荐在专门的代理情形下使用。

配置Traffic Server缓存动态内容:

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache_urls_that_look_dynamic 设置这个变量为1来缓存动态内容。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

缓存Cookied对象

默认情况下,Traffic Server缓存为包含cookies请求服务的响应对象(除了文本对象)。Traffic Server之所以不缓存文本内容的cookied,是因为对象的头部和对象是一起存储的,而带有隐私的cookie头部是不能和对象一起保存的。对于非文本对象,不能确定是否使用了带有隐私的cookie头部。

可以配置Traffic Server:

  • 不缓存任何类型的cookies内容。
  • 只缓存图片类型的cookies内容。
  • 缓存所有的cookies内容。

配置Traffic Server缓存cookied内容的方式:

1.        在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。

2.        编辑下面的变量:

变量 描述
proxy.config.http.cache.cache_responses_to_cookies 设置这个变量来指定Traffic Server缓存cookied内容的方式:

0 = 不缓存任何cookies响应。

1 = 缓存所有的cookies响应。

2 = 只缓存图片类型的cookies响应。

3 = 缓存除了文本内容类型的所有cookies响应。

3.        保存并关闭records.config文件

4.        定位到Traffic Server的bin目录

5.        运行traffic_line –x命令来应用配置文件的变更。

分享到:
评论

相关推荐

    Traffic Server

    Traffic Server 是一款高...总之,Traffic Server 通过高效的缓存管理和智能的请求处理,为HTTP访问提供了显著的速度提升和带宽节省。无论是对于优化企业内部网络还是改善互联网服务,都是一个强大而灵活的解决方案。

    trafficserver文档

    - **TrafficServer缓存**:基于高速对象数据库(Objectstore)构建,能高效存储大量不同类型的对象,支持对象替换版本管理和自动过期数据清理机制。设计时充分考虑了容错性,即使部分磁盘失效,仍能正常运行。 - **RAM...

    Traffic Server 管理员手册

    1. 提高Web内容的访问速度:Traffic Server缓存了用户访问频繁的页面和对象,从而减少用户获取这些内容时的延迟。 2. 增加吞吐量:通过减少对原始服务器的请求次数,使得可以同时处理更多的用户请求。 3. 减少带宽...

    proxyServer squid / varnish / apache traffic server / ATS

    Varnish的核心是一个高性能的虚拟内存数据存储系统,它使用内存和存储来缓存对象,并通过算法优化存储和检索过程,以最小化对硬盘I/O的操作,从而大大提高了性能。 Apache Traffic Server(ATS)是另一种高性能的...

    ASP源码—网站统计分析系统.zip

    这可能包括使用ASP内置的对象如Response和Server,以及第三方图表库,如Chart.js或Highcharts。 5. 安全性:ASP源码中还会涉及用户认证、权限管理以及防止SQL注入等安全措施,以保护统计数据不被未授权的访问。 6....

    一文看懂全局负载均衡与 CDN 内容分发.docx

    * 服务商能使用 Web Cache 技术在本地缓存用户访问过的 Web 页面和对象,实现相同对象的访问无须占用主干的出口带宽,并提高用户访问因特网页面的相应时间的需求 * 能克服网站分布不均的问题,并且能降低网站自身...

    2.2 Go在阿里云CDN系统的应用.pdf

    - **中期阶段(2011-2014年)**:随着业务量的增长和技术的进步,阿里云CDN系统逐渐引入了更多高级技术和组件,如增加服务器节点数量至230台,并采用了Squid缓存服务器和Traffic Server等技术来提升性能。...

    负载均衡Irules编程宝典

    iRules是一种基于F5 TMOS(Traffic Management Operating System)的开放式脚本语言,它为F5设备提供了高度定制化的功能。iRules基于TCL(Tool Command Language)语法,可以直接嵌入到F5设备中,用于处理通过这些...

    Hillstone山石网科安全网关命令手册_4.0R3

    58. **logging traffic to**:流量日志输出。 59. **match**:匹配条件设置。 60. **member**:成员管理。 61. **nbt-cache enable**:启用NetBIOS名称缓存。 62. **nbtstat ip2name**:查询IP地址到NetBIOS名称的...

    Hillstone山石网科安全网关命令手册

    - **desc**:用于描述对象,如接口或规则集的描述信息。 - **dns**:配置DNS服务器,确保域名解析正常。 - **dst-addr-based-session-counter**:基于目的地址统计会话计数器,帮助监控流量情况。 - **exec console ...

Global site tag (gtag.js) - Google Analytics