web基础·杂(浏览器缓存,DNS,CDN)

一、浏览器缓存

在查看页面时发现异常,一般会刷新缓存,快速的做法是Ctrl+F5,重新发起请求。

问了确保Ctrl+F5重新发起的请求得到的结果既不是浏览器缓存也不是服务器缓存,Ctrl+F5时在HTTP头会添加一些参数,如下:

Cache-Control:no-cache:针对浏览器,内容不被缓存

Pragma:no-cache:针对服务器,内容不被缓存

二、DNS

域名解析(DNS),简单来说就是把类似www.baidu.com这样的域名解析为实际的IP地址,例如:39.104.122.336

但这个过程并不简单,粗略可理解为:

1,浏览器检查缓存中有无这个域名对应的解析,有则解析结束。这个缓存受缓存大小和有效时间(TTL)制约

2,若没有,查找操作系统缓存中是否有对应域名解析,有则解析结束。

3,若没有,访问DNS服务器,一般就是LDNS(Local DNS),即你所使用的网络的供应商,例如电信,联通。而LDNS上保存的也是缓存,只是性能较好,能解决80%的解析。

4,若LDNS还是没有,则到终极的Root Server域名解析服务器

5,而Root Server返回不是解析结果,而是给本地域名服务器返回一个主域名服务器地址,例如.com,.cn,.org等

6,本地服务器得到主域名服务器地址后去访问主域名服务器(gTLD Server)

7,gTLD Server返回需要解析的域名对应的 Name Server域名服务器地址。Name Server指你域名所购的服务商,例如从阿里购买的域名,那这个域名服务器由阿里提供。

8,Name Server从IP对照表里获取解析结果,连同TTL值一起返回

清除域名缓存方法

从请求过程可以得出,可以从清除LDNS和本地缓存,两个方向着手。

LDNS,由控制TTL来控有效时间

本地缓存,window下使用ipconfig/flushdns;Linux下使用/etc/init.d/nscd restart来清除缓存

三、CDN

中文意思是内容分布网络,很抽象的概念,可以更抽象的概括为:

CDN=镜像(Mirror)+缓存(Cache)+整体负载均衡(GSLB)

简单理解就是“就近打水”,CDN以缓存网站中静态数据为主,如CSS,JS,图片,静态页面,有了CDN就可以把这些东西放在和访问者距离最近的服务器上,来提高访问速度。

过程粗略理解为:

访问一个静态文件,例如一个CSS文件,域名是cdn.css.com,首先由LDNS来发起请求,解析后到这个域名的注册服务器(Name Server)去解析,这时可以把域名CNAME到另外一个域名,例如cdn.cssgcc.com,这个域名最终被指向CDN全局中的DNS负载均衡服务器,再由这个GTM来返回给距离这个访问者最近的CDN节点。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值