今天看kevintang 写的关于运营规划师的博文,里面提到“cookie隔离”技术,这名词还是第一次听说,网上搜了半天也没有相关的文章,
思索了半天,自己做了下实验,理解了一下思路,遂整理一下:
cookie隔离技术和传统的多域名拆分请求,提高浏览器并发请求数有点类似,均是采用多域名来处理请求
传统做法是将css,js,图片等静态文件放在多个域名下面请求,这样就可以跨过浏览器对统一主机名并发连接数的限制,提高整体并发请求量。
cookie隔离技术则是通过使用多个非主要域名来请求静态文件,如果静态文件都放在主域名下,那静态文件请求的时候带有的cookie的数据提交给server是非常浪费的,还不如隔离开。
因为cookie有域的限制,因此不能跨域提交请求,故使用非主要域名的时候,请求头中就不会带有cookie数据,这样可以降低请求头的大小,降低请求时间,从而达到降低整体请求延时的目的。同时这种方式不会将cookie传入webserver,也减少了webserver对cookie的处理分析环节,提高了webserver的http请求的解析速度。
kevintang给出的测试结果是:
在做腾讯网加速的时候,启用了两个非qq.com的新域名,mat1.gtimg.com和img1.gtimg.com,隔离前10个cookie,185字节,约4KB,存在请求延时现象,隔离后无cookie,图片服务器速度由原来0.63秒提升到0.43秒,速度提升32%