---
title: CacheBrowser 更像对 DNS 污染的静态资源层补丁
date: '2015-11-23 20:07:23'
draft: false
summary: 客户端内置域名与 CDN 映射缓存可以缓解 DNS 污染并加速静态资源访问，但它更适合作为辅助层而不是完整解法。
slug: cachebrowser-against-dns-pollution
syndication:
- platform: Weibo
  url: https://weibo.com/1648815335/D5dt0qMB0
tags:
- dns
- cdn
- network
- browser
topics:
- software-engineering
type: post
---

看了下 `CacheBrowser` 这类方案之后，我的感觉是：它确实能在一定程度上缓解 `DNS` 污染问题，但更像一个偏静态资源层的辅助补丁，而不是完整解法。

它的核心思路，是在客户端内置域名和 `CDN` 节点之间的映射缓存。这样访问静态资源时，就不完全依赖实时的域名解析结果，而可以直接利用缓存映射去命中更合适的 `CDN` 节点。

这种做法有两个直接收益：

1. 一定程度绕开 `DNS` 污染。
2. 提升静态资源访问速度。

但问题也很明显：它主要对静态资源有效。

动态资源并不能用同样的方式处理，因为动态请求背后不仅是地址访问问题，还牵涉状态、会话、路由策略以及服务端处理逻辑。到了这一层，仅靠域名和 `CDN` 映射缓存就不够了。

所以我对这种方案的判断是：可以作为辅助工具，而且在现实网络环境里确实有价值；但如果把它当成完整解决方案，就会高估它的能力边界。

它更像是在现有网络结构不变的前提下，想办法把一部分最痛的静态访问问题先局部修掉。
