从cdn说起

雅虎军规有一条规则建议我们是用cdn。随便在网上搜索,可以找到使用的cdn的好处。

再次强调第一条黄金定律,减少网页内容的下载时间。提高下载速度还可以通过CDN(内容分发网络)来提升。CDN通过部署在不同地区的服务器来提高客户的下载速度。如果你的网站上有大量的静态内容,世界各地的用户都在访问,我说的是youtube么?那CDN是必不可少的。事实上大多数互联网中的巨头们都有自己的CDN。我们自己的网站可以先通过免费的CDN供应商来分发网页资源。

cdn不只是可以让用户去请求到离自己最近的服务器,提高速度,他还有以下几个好处。

1. 防止本域名下的cookie在发送请求时被带过去。

如果在network下看过页面的请求,可以发现,即使是请求一张jpg的图片,也会发送同域下的cookie过去。即便是不到几k的大小,用户量大了,也是一个巨大的消耗。不论是出于加载速度还是宽带的考虑,都应该避免这种情况。这也是静态cdn的域名不与主域名一致的原因之一。

2. 防止过多请求被浏览器限制。

3. 方便缓存复用。

如果是同一个静态文件,在多个页面被加载,如果在cdn上,被客户端缓存下来,那么再打开另一个页面,也不需要再去请求,可以直接使用缓存。

说到了cdn,就想到了一些平时开发时约定俗成的习惯。

dns预解析

估计大部分同学都会有一个文件存满了诸如以下的内容:

<meta http-equiv="x-dns-prefetch-control" content="on" /> <link rel="dns-prefetch" href="http://img.jd.com" /> <link rel="dns-prefetch" href="http://static.jd.com" /> 

公司常常会有很多个静态资源的域名,有的时候,页面下的静态资源很可能是从许多个不同的域名下加载的。而域名解析为主机也需要时间,这时,如果我们使用dns预解析,可以加快资源的请求速度。
这需要浏览器的支持,目前主流浏览器全部支持。

合理利用缓存

雅虎军规第一条————减少http请求。
实际开发中,雪碧图、压缩捆绑css、js是我们常用的方式。但是在客户端能力越来越强的如今,其实不一定非要这么做。
举个例子,如今客户端会缓存大部分静态资源在本地,加上并发请求的原因,多个文件反而能更好的利用客户端的能力。
我认为,在项目上线时,尽可能找到复用较多的资源,单独拿出来,项目专享的js和css打包成一个文件,不失为一个更好的选择。

常用的cdn网站

以上是我个人的一些理解,如有不对,敬请指教。

原文链接:https://www.cnblogs.com/liuyongjia/p/7881400.html

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/5892

(0)
上一篇 2022年8月15日 09:37
下一篇 2022年8月15日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml