字节跳动基于TrafficRoute DNS的超千亿级调度解析优化实践

本文介绍了火山引擎TRDNS在泛CDN场景中的实践经验和优化措施。内容从能力出发,详细介绍了遇到的挑战、TRDNS的优化措施、取得的效果。主要能力为以下2部分:

  1. 控制台能力,包括专用的IP库管理系统、定制调度API系统

  2. 定制调度能力,包括权重与分组响应、智能解析、CNAME加速、302调度、LocalDNS画像


在直播CDN、静态CDN和动态CDN等泛CDN边缘接入场景中,通常采用DNS来作为边缘第一层的接入调度。由于边缘接入点分布广泛且容易受到外部环境的影响,导致接入点频繁变动,因此,在泛CDN环境中,DNS的基础调度功能显得尤为关键。

以字节跳动集团业务为例,在泛CDN场景下拥有日均超千亿次的解析需求,为保障业务稳定运行,应用了TrafficRoute-DNS(下文简称TRDNS)作为基础调度系统,不仅负责云解析服务,还承担了泛CDN的调度解析服务,支撑起了泛CDN日均超千亿次的解析量

0控制台能力

1.1专用的IP库管理系统

IP库对于智能解析来说至关重要。由于CDN业务与多家运营商建立了节点合作关系,能够及时获取运营商IP网段的一手资料。每当运营商更新其IP网段,CDN系统就会希望IP库能够迅速做出更新响应。为了满足这一需求,TRDNS开发了一套专用的IP库管理系统。

该系统有以下能力:

  1. IP库版本管理能力

  2. IP库自定义字段打包能力

  3. IP库灰度发布能力

图片

1.2定制调度API系统

CDN流量调度系统采用定时任务,以分钟级频率更新调度策略,并将其转换为DNS配置文件。这些文件通过DNS调度API下发至DNS控制面系统,经过一系列数据流操作后,DNS配置信息被存储至DB中。同时,TRDNS执行秒级定时任务,主动拉取DNS控制面系统的增量DNS变更,并通过reload操作更新域名配置。这一流程确保了DNS解析指令能够在分钟级内下发并生效。详细的调度系统如图所示。

图片

调度API是为CDN系统专门定制的,与标准API接口不同,它需要具备高性能、低延迟的能力,以应对大量DNS解析操作的需求。CDN系统通常需要在分钟级别的时间间隔内下发3000到20000条DNS解析记录的变更。为此,我们对调度API进行了多轮性能优化和调整,确保其能满足这一需求。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值