得物CDN域名收敛及多厂商容灾优化实践
出处:
mp.weixin.qq.com
作者:
Aix
CDN域名太多造成请求碎片化,导致以下几个问题: TCP建连频繁,网络请求性能差 用于请求CDN静态资源的网络连接池资源有限,由于不同域名会各自创建TCP连接,进而竞争TCP连接池资源,导致TCP连接频繁中断。再次发起网络请求需要重新进行TCP建连增加了建连阶段耗时(包括:DNS解析、TCP握手、TLS握手),导致总耗时升高。 域名太多,日常维护成本高 域名太多导致域名管理、性能监控、性能优化、线上变更复杂度增加,人力成本及运维成本高。 如:得物IPv6升级项目、TLS1.3协议升级项目都需要按域名分批执行多次线上变更流程(包括:测试回归,变更申请,变更评审,变更验证,性能监控)。 部分域名命名不规范,存在下线风险 由于历史原因,存在多个不符合现有新域名规范的域名名称(如:xxx.poizon.com,xxx.dewu.com)。非得物主体的域名,存在被强制下线的风险,比如旧域名下线项目,投入了大量人力成本进行改造。 DNS解析IP频繁,阿里云HttpDNS服务成本高 域名太多增加了每个域名在TCP建连时调用阿里云HttpDNS解析对应IP的频次,解析次数升高导致HttpDNS服务成本