ATS日志格式中的Squid-和Netscape-格式的缓存结果码

2024-03-18 15:32

本文主要是介绍ATS日志格式中的Squid-和Netscape-格式的缓存结果码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在ATS日志中我们经常遇到形形色色的缓存结果码,为了更清晰地认识它们,我将官网的相关资料整理到这里:
下面的表描述了Squid和Netscape日志文件中的缓存结果码:
TCP_HIT
请求对象的一份合法拷贝被缓存,ATS将发送该对象给client
TCP_MISS
请求对象未缓存,ATS会从源站或是父代理那里获取请求对象,并发送给client
TCP_REFRESH_HIT
请求对象已缓存,但是旧的(stale),ATS向源站发送if-modified-since请求,源站回应304 not-modified响应,ATS发送(依然fresh的)缓存对象给client
TCP_REF_FAIL_HIT
请求对象已缓存,但是旧的(stale),ATS向源站发送if-modified-since请求但是源站没有响应,ATS发送缓存的旧对象给client
TCP_REFRESH_MISS
请求对象已缓存,但是旧的(stale),ATS向源站发送if-modified-since请求,源站回应一个新对象,ATS缓存后将该对象返回给client
TCP_CLIENT_REFRESH
client发送一个带有no-cache的请求,ATS回源得到一个请求对象将拷贝返回给client,ATS从缓存中删除该对象的copy
TCP_IMS_HIT
client发送一个if-modified-since的请求,缓存对象比IMS date新,或者ATS向源站发送if-modified-since请求发现缓存对象是新的,ATS将该缓存对象返回给client
TCP_IMS_MISS
client发送一个if-modified-since的请求,缓存对象要么未缓存,要么缓存了但是stale了,ATS向源站发送if-modified-since请求并接收到一个新对象,ATS缓存后将该对象 返回给client
TCP_SWAPFAIL
对象已缓存但是不能访问,client未能收到该object
ERR_CLIENT_ABORT
客户端在未完整接收object前断开连接
ERR_CONNECT_FAIL
源站不可达
ERR_DNS_FAIL
DNS服务器不能解析源站域名,或是DNS不可达
ERR_INVALID_REQ
client发送的HTTP请求非法,ATS不知道使用何方法转发该请求到源站
ERR_READ_TIMEOUT
源站在超时时间内没有响应ATS
ERR_PROXY_DENIED
client服务被拒
ERR_UNKNOWN
客户端建连了,但随后又断开了,没有发送任何请求


参考文献
[1].https://docs.trafficserver.apache.org/en/latest/admin/working-log-files.en.html#squid-and-netscape-format-cache-result-codes

这篇关于ATS日志格式中的Squid-和Netscape-格式的缓存结果码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/822797

相关文章

使用python生成固定格式序号的方法详解

《使用python生成固定格式序号的方法详解》这篇文章主要为大家详细介绍了如何使用python生成固定格式序号,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录生成结果验证完整生成代码扩展说明1. 保存到文本文件2. 转换为jsON格式3. 处理特殊序号格式(如带圈数字)4

MyBatis延迟加载与多级缓存全解析

《MyBatis延迟加载与多级缓存全解析》文章介绍MyBatis的延迟加载与多级缓存机制,延迟加载按需加载关联数据提升性能,一级缓存会话级默认开启,二级缓存工厂级支持跨会话共享,增删改操作会清空对应缓... 目录MyBATis延迟加载策略一对多示例一对多示例MyBatis框架的缓存一级缓存二级缓存MyBat

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

Java 缓存框架 Caffeine 应用场景解析

《Java缓存框架Caffeine应用场景解析》文章介绍Caffeine作为高性能Java本地缓存框架,基于W-TinyLFU算法,支持异步加载、灵活过期策略、内存安全机制及统计监控,重点解析其... 目录一、Caffeine 简介1. 框架概述1.1 Caffeine的核心优势二、Caffeine 基础2

Java 日志中 Marker 的使用示例详解

《Java日志中Marker的使用示例详解》Marker是SLF4J(以及Logback、Log4j2)提供的一个接口,它本质上是一个命名对象,你可以把它想象成一个可以附加到日志语句上的标签或戳... 目录什么是Marker?为什么使用Markejavascriptr?1. 精细化的过滤2. 触发特定操作3

Redis高性能Key-Value存储与缓存利器常见解决方案

《Redis高性能Key-Value存储与缓存利器常见解决方案》Redis是高性能内存Key-Value存储系统,支持丰富数据类型与持久化方案(RDB/AOF),本文给大家介绍Redis高性能Key-... 目录Redis:高性能Key-Value存储与缓存利器什么是Redis?为什么选择Redis?Red

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

React 记忆缓存的三种方法实现

《React记忆缓存的三种方法实现》本文主要介绍了React记忆缓存的三种方法实现,包含React.memo、useMemo、useCallback,用于避免不必要的组件重渲染和计算,感兴趣的可以... 目录1. React.memo2. useMemo3. useCallback使用场景与注意事项在 Re

Docker多阶段镜像构建与缓存利用性能优化实践指南

《Docker多阶段镜像构建与缓存利用性能优化实践指南》这篇文章将从原理层面深入解析Docker多阶段构建与缓存机制,结合实际项目示例,说明如何有效利用构建缓存,组织镜像层次,最大化提升构建速度并减少... 目录一、技术背景与应用场景二、核心原理深入分析三、关键 dockerfile 解读3.1 Docke

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结