前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CDN系列学习文章(三)——302调度

CDN系列学习文章(三)——302调度

原创
作者头像
开元
修改2019-06-19 22:54:07
8.3K1
修改2019-06-19 22:54:07
举报
文章被收录于专栏:开元说说

本文主要聊聊302调度,咱们不妨先思考一下,

传统DNS调度有哪些不足呢?

1.调度精准度。传统的DNS调度中,用户是如何获取CDN接入节点加速呢?回想上篇文章,是不是依赖于LDNS出口IP。CDN是什么呢?当然是加速啊,理想条件下,用户位置与CDN节点之间距离越近,理论上加速效果越好,所以基于用户IP地址来获取CDN节点,这样调度方式会更合理,进而后续EDNS对此进行优化。

2.调度灵活性。试想一种场景,某个地区CDN机房带宽满负载,如果不能及时扩容,影响用户访问。退一步,CDN冗余足够,但是现网还有一个TTL时间,还是影响突增类业务,再遇到超长TTL DNS,简直就是灾难。这种原因导致就是用户请求得到节点A,只能发请求到A节点,没有任何讨价还价的余地。

3.调度大局观。试想一下,DNS获取的广东电信CDN接入节点IP,DNS仅仅这个地域节点IP,对全局CDN接入节点情况毫不知情,限制调度想想空间。

既然DNS调度有这么不足,为啥还会用的。基于目前情况,就是性价比高,简单快捷。

为了弥补传统DNS这些不足,302调度就横空出世了,那咱们先讲讲

啥是302调度?

简单来讲,用户不在苛刻要求只发一次请求拿到响应,接受多次请求。那问题来了,怎么让客户发多次请求呢,HTTP 302状态码就派上用场了。更重要的有了302,调度的掌控权会牢牢掌握在调度服务器手里,而不在公网DNS手里,这样让调度有个更大想象空间。当然公网劫持另当别论,后续咱们在讨论。

这里可能还有困惑,不要急,看完这张图,就明白是咋回事了。

302调度
302调度

从上图中发现,与传统DNS调度几点不同:

1.用户DNS解析域名时候,获得IP地址并不是CDN接入节点,而是CDN服务厂家调度机IP地址

2.用户向调度机发送请求时,会带有准确的用户端ip地址,另外由于调度机是厂家自己服务,会有足够视眼去优化调度,通过各种策略(机器负载,文件热度以及带宽冗余等),返回给用户当前最合适节点IP地址。

3.用户获得302响应,重新向CDN接入节点发起请求,获取响应

虽然302调度有自己优势,但是也存在不足,所以只有合适的,没有最好的。

1.响应时间。至少会增加一次302跳转耗时

2.业务风险。如果调度主备集群出现异常,对全部客户业务是毁灭性的

3.机器成本。调度集群成本,以及各种收集监控数据,来综合判断当前调度策略。

4.兼容性。部分终端不支持302跳转。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档