缓存配置¶
cache 配置块用于控制 Load Ants 内置的 DNS 缓存功能。一个优化的缓存配置可以极大地提升 DNS 解析速度,降低延迟,并减少对上游服务器的请求压力。
想要深入了解缓存的工作原理吗?请阅读 核心概念:高性能缓存机制。
示例¶
cache:
enabled: true
max_size: 10000
min_ttl: 60
max_ttl: 3600
negative_ttl: 300
参数详解¶
| 参数 | 类型 | 描述 | 默认值 | 是否必填 |
|---|---|---|---|---|
enabled |
布尔值 | 是否启用 DNS 缓存功能。你可以通过将其设为 false 禁用缓存;也可以直接移除整个 cache 配置块来禁用缓存。 |
true |
是 (若 cache 块存在) |
max_size |
整数 | 缓存中可以存储的最大 DNS 记录条数。当缓存达到此上限时,最老的记录会被移除,为新记录腾出空间。 | 10000 |
是 (若 cache 块存在) |
min_ttl |
整数 | 缓存 TTL 下限(秒):当响应中的记录 TTL 过小,会被提升到不低于 min_ttl。 |
1 |
是 (若 cache 块存在) |
max_ttl |
整数 | 缓存 TTL 上限(秒)。注意:当前版本主要用于配置校验(例如确保 min_ttl <= max_ttl);缓存实现未在写入阶段对 TTL 做上限截断。 |
86400 |
是 (若 cache 块存在) |
negative_ttl |
整数 | 负向缓存 TTL(秒):用于缓存失败查询(例如 NXDOMAIN 或无答案响应),可减少对无效域名的重复请求。 |
300 |
是 (若 cache 块存在) |
✨ 专家提示:
- 对于大多数家庭或个人用户,默认的缓存配置已经相当优化,无需修改。
- 如果你在一个变化非常频繁的网络环境(例如,某些服务的 IP 地址经常变更),更推荐通过路由或上游策略来控制解析结果的更新节奏(当前版本缓存实现主要使用
min_ttl/negative_ttl)。- 如果你的网络中有设备(例如 IoT 设备)会频繁查询一些不存在的域名,适当调高
negative_ttl可以减轻上游服务器的压力。