一般情况下,直播平台软件开发会使用DNS做解析,加速用户获取内容的速度,不过传统DNS存在一些问题,在介绍新的协议之前,我们先来看当前直播平台软件开发面临什么问题。
一、传统DNS存在的问题
1、域名缓存问题,平台为了节省流量计算的成本,会将一些经常访问的域名以及IP的映射在本地进行缓存,当有其他相同的请求时,会直接返回这个缓存数据,如果这些缓存更新不及时,那必然会影响到用户的访问使用
2、域名转发问题,当用户请求时,本应该是直播平台软件开发A服务器来响应,但A却把请求转移给了B服务器,这可能存在跨地区响应的情况,一旦涉及到了跨地区响应,那速度就会随之下降
3、出现NAT问题,在直播平台软件开发的局域网中,当机器使用NAT地址转换访问外部网络时,DNS服务器无法通过转换来判断客户端来自哪个运营商,并可能出现误判
4、解析延迟问题,本身DNS的查询是需要通过本地DNS服务器迭代多个DNS服务器才能获得最终解析结果的,由于需要多服务器工作,那必然存在延迟,甚至超时
二、新的HTTPDNS
做为新的协议,HTTPDNS不经过传统DNS解析的路径,自己搭建基于HTTP协议的DNS服务器集群,分布在多个地点,这样能方便直播平台软件开发响应用户请求时采取就近原则。
说到新的协议,我们主要说一下HTTPDNS的缓存设计,这里它将解析速度和更新速度全部交给SDK来控制:一方面可以实现解析的过称只要一个HTTP的请求就能搞定,可以保证实时性;另一方面,借助本地缓存,可以保证直播平台软件开发的掌控权。
三、缓存设计
缓存设计的策略只分了三层,客户端、缓存、数据源,分别对应着移动端设备、DNS缓存和HTTPDNS服务器,倒是有很强的针对性,覆盖了直播平台软件开发的主要服务范围,解析可以选择同步进行,直接调用HTTPDNS的借口返回新的记录更新缓存;也可以异步进行,添加一个解析任务到后台,由直播平台软件开发的后台任务调用接口。
声明:以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任
领取专属 10元无门槛券
私享最新 技术干货