CN114615276A - 一种内容分发网络域名调度方法及装置 - Google Patents

一种内容分发网络域名调度方法及装置 Download PDF

Info

Publication number
CN114615276A
CN114615276A CN202210242502.XA CN202210242502A CN114615276A CN 114615276 A CN114615276 A CN 114615276A CN 202210242502 A CN202210242502 A CN 202210242502A CN 114615276 A CN114615276 A CN 114615276A
Authority
CN
China
Prior art keywords
domain name
distribution network
content distribution
network domain
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210242502.XA
Other languages
English (en)
Other versions
CN114615276B (zh
Inventor
徐普航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN202210242502.XA priority Critical patent/CN114615276B/zh
Publication of CN114615276A publication Critical patent/CN114615276A/zh
Priority to PCT/CN2023/074321 priority patent/WO2023169106A1/zh
Application granted granted Critical
Publication of CN114615276B publication Critical patent/CN114615276B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了一种内容分发网络域名调度方法及装置,该方法响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;确定所述第一内容分发网络域名所在的目标域名集合;基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。本公开实施实例通过目标域名集合中各个内容分发网络域名的可用度权重,为客户端选择第二内容分发网络域名,可以在不与DNS或服务器交互的情况下配置可用的域名,域名调度效率较高,响应速度更快。

Description

一种内容分发网络域名调度方法及装置
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种内容分发网络域名调度方法及装置。
背景技术
内容分发网络(Content Delivery Network,CDN)是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。不同的边缘服务器拥有不同的域名,通过对客户端分发不同的域名实现资源的调度。通常,CDN域名分发的工作由域名系统(Domain NameSystem,DNS)或服务器进行,需要向DNS或服务器进行请求,花费较多时间,若域名发生异常,则需要重新获取可用域名,客户端无法快速切换至可用的CDN域名。
发明内容
本公开实施例至少提供一种内容分发网络域名调度方法及装置。
第一方面,本公开实施例提供了一种内容分发网络域名调度方法,应用于客户端,包括:
响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
确定所述第一内容分发网络域名所在的目标域名集合;
基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
一种可选的实施方式中,所述响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名,包括:
响应于客户端的主线程发起的资源获取请求,调用所述客户端的背景线程确定所述资源获取请求指示的第一内容分发网络域名。
一种可选的实施方式中,所述确定所述第一内容分发网络域名所在的目标域名集合,包括:
从多个预先生成的内容分发网络域名集合中查找所述第一内容分发网络域名,并将查找到所述第一内容分发网络域名的内容分发网络域名集合作为所述目标域名集合;
通过以下步骤生成所述内容分发网络域名集合:
以预设时长为周期,获取与所述客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名;
为各个可用内容分发网络域名生成初始化的可用度权重,并基于所述可用度权重生成各个目标资源对应的内容分发网络域名集合。
一种可选的实施方式中,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
根据所述可用度权重为所述目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;
从所述抽选单位中随机抽取一个目标抽选单位;
将所述目标抽选单位对应的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,将所述第一内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述方法还包括:
在所述第一服务器未能在第一预设时长内反馈资源信息的情况下,将所述第二内容分发网络域名的可用度权重下调第一预设阈值,并重新从所述目标域名集合中筛选所述第二内容分发网络域名。
一种可选的实施方式中,重新从所述目标域名集合中筛选所述第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,将所述资源获取请求指示的请求模式调整为指定选取域名模式,并重新从所述目标域名集合中筛选所述第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,从所述目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述方法还包括:
在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,并将上调后的超过所述预设最大值的可用度权重调整为所述预设最大值。
第二方面,本公开实施例还提供一种内容分发网络域名调度装置,用于客户端,包括:
第一确定模块,用于响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
第二确定模块,用于确定所述第一内容分发网络域名所在的目标域名集合;
筛选模块,用于基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
发送模块,用于将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
一种可选的实施方式中,所述第一确定模块在响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名时,用于:
响应于客户端的主线程发起的资源获取请求,调用所述客户端的背景线程确定所述资源获取请求指示的第一内容分发网络域名。
一种可选的实施方式中,所述第二确定模块在确定所述第一内容分发网络域名所在的目标域名集合时,用于:
从多个预先生成的内容分发网络域名集合中查找所述第一内容分发网络域名,并将查找到所述第一内容分发网络域名的内容分发网络域名集合作为所述目标域名集合;
所述装置还包括生成模块,用于:
以预设时长为周期,获取与所述客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名;
为各个可用内容分发网络域名生成初始化的可用度权重,并基于所述可用度权重生成各个目标资源对应的内容分发网络域名集合。
一种可选的实施方式中,所述筛选模块在基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名时,用于:
根据所述可用度权重为所述目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;
从所述抽选单位中随机抽取一个目标抽选单位;
将所述目标抽选单位对应的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块在基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名时,用于:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,将所述第一内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块还用于:
在所述第一服务器未能在第一预设时长内反馈资源信息的情况下,将所述第二内容分发网络域名的可用度权重下调第一预设阈值,并重新从所述目标域名集合中筛选所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块在重新从所述目标域名集合中筛选所述第二内容分发网络域名时,用于:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,将所述资源获取请求指示的请求模式调整为指定选取域名模式,并重新从所述目标域名集合中筛选所述第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,从所述目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述装置还包括调整模块,用于:
在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,并将上调后的超过所述预设最大值的可用度权重调整为所述预设最大值。
第三方面,本公开实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
本公开实施例提供的内容分发网络域名调度方法及装置,该方法首先响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;然后,确定所述第一内容分发网络域名所在的目标域名集合;其次,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;最后,将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。本公开实施实例通过目标域名集合中各个内容分发网络域名的可用度权重,为客户端选择第二内容分发网络域名,可以在不与DNS或服务器交互的情况下配置可用的域名,域名调度效率较高,响应速度更快。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种内容分发网络域名调度方法的流程图;
图2示出了本公开实施例所提供的另一种内容分发网络域名调度方法的流程图;
图3示出了本公开实施例所提供的一种内容分发网络域名调度装置的示意图;
图4示出了本公开实施例所提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
经研究发现,CDN域名分发的工作通常由DNS或服务器进行,DNS可以管理有CDN的各个域名运行情况,为客户端分配合适的域名,服务器也可以响应客户端的域名获取请求,返回可用域名,在客户端获取到域名后,可以尝试访问该域名,若域名异常,则需要重新向DNS或服务器请求新的可用域名,该过程存在两次甚至更多的网络通信,导致客户端访问可用域名的花费的时间较长,
基于上述研究,本公开提供了一种内容分发网络域名调度方法及装置,通过目标域名集合中各个内容分发网络域名的可用度权重,为客户端选择第二内容分发网络域名,可以在不与DNS或服务器交互的情况下配置可用的域名,域名调度效率较高,响应速度更快。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种内容分发网络域名调度方法进行详细介绍,本公开实施例所提供的内容分发网络域名调度方法的执行主体一般为具有一定计算能力的计算机设备,该计算设备具有浏览器的功能,可以访问网页及内容分发网络。在一些可能的实现方式中,该内容分发网络域名调度方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
下面以执行主体为客户端为例对本公开实施例提供的内容分发网络域名调度方法加以说明。
参见图1所示,为本公开实施例提供的内容分发网络域名调度方法的流程图,所述方法包括步骤S101~S104,其中:
S101、响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名。
该方法的执行主体可以为客户端,客户端能够运行有浏览器,或具有浏览器功能的应用程序,客户端上可以运行有访问页面的主线程,在背景线程(子线程)中可以运行有页面对象web worker,能够执行本公开实施例中的步骤。
在客户端上运行的页面的主线程发起资源获取请求后,子线程上运行的页面对象可以响应于资源获取请求,确定资源获取请求指示的第一内容分发网络域名,该第一内容分发网络域名可以为客户端访问的页面默认指示的域名,由于该域名是预设的,可能客户端与该域名对应的服务器之间的物理距离较远,通信效果可能较差,因此,可以进行域名调度,选取更合适的域名获取资源。
在具体实施中,子线程上运行的页面对象可以先判断该资源获取请求是否为对内容分发网络域名发起的获取请求,若是,则响应该资源获取请求,若不是,则可以直接放行该请求,使其通过原本的方式进行资源获取。
S102、确定所述第一内容分发网络域名所在的目标域名集合。
该步骤中,子线程上运行的页面对象可以以预设时长为周期,定期获取客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名,并生成各个可用内容分发网络域名的可用度权重,然后生成或更新目标页面对应的内容分发网络域名集合,该内容分发网络域名集合中可以指示有各个内容分发网络域名的可用度权重,该可用度权重可以根据客户端与域名对应的服务器之间的物理距离,和/或,该域名的健康度进行确定。
在确定第一内容分发网络域名之后,可以从多个内容分发网络域名集合中进行搜索,将含有第一内容分发网络域名的内容分发网络域名集合作为目标域名集合。
S103、基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名。
该步骤中,可以根据各个内容分发网络域名的可用度权重,为客户端选取一个第二内容分发网络域名。
示例性的,可以根据可用度权重为目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;然后,从抽选单位中随机抽取一个目标抽选单位;最后,将目标抽选单位对应的内容分发网络域名作为第二内容分发网络域名。
其中,抽选单位的数量可以根据可用度权重确定,比如,若一内容分发网络域名的可用度权重为1.5,则可以将该可用度权重整数化,整数化可以包含多种方式,比如,可以先确定可用度权重的小数位数,然后对可用度权重乘以10的小数位数的乘方,或者,采用四舍五入的方法,对可用度权重进行整数化。之后,可以将整数化的结果作为其对应的内容分发网络域名的抽选单位数量。
在具体实施过程中,客户端可以使用多种针对域名的请求模式,具体使用的请求模式可以通过资源获取请求指示,或通过子线程上运行的页面对象进行预设,示例性的,请求模式可以包括随机选取域名模式和指定选取域名模式,若当前的请求模式为随机选取模式,可以基于上述可用度权重,确定第二内容分发网络域名;在请求模式为指定选取域名模式的情况下,可以直接将第一内容分发网络域名作为第二内容分发网络域名。
进一步的,在指定选取域名模式下,若第一内容分发网络域名的可用度权重小于或等于预设阈值,则可以认为该第一内容分发网络域名处于不可用状态,可以从目标域名集合中选取出一内容分发网络域名作为第二内容分发网络域名,示例性的,可以选取可用度权重最高的内容分发网络域名作为第二内容分发网络域名,或者,可以按照预设顺序,选取第一个未选取过的内容分发网络域名作为第二内容分发网络域名。
S104、将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
在确定第二内容分发网络域名后,即可向第二内容分发网络域名对应的第一服务器发送资源获取请求,上述第一服务器可以为内容分发网络中的一个边缘服务器,存储有资源获取请求对应的资源信息,第一服务器在接收到资源获取请求之后,可以向客户端发送资源获取请求对应的资源信息。
若第一服务器未能在第一预设时长内反馈资源信息,则说明第一服务器出现了异常,也即第一服务器对应的内容分发网络域名出现异常,此时,可以将第二内容分发网络域名的可用度权重下调,具体的,可以将其下调第一预设阈值,或将其直接下调至0,然后,重新从目标域名集合中筛选第二内容分发网络域名。
这样,在访问的域名出现异常的情况下,无需与服务器或DNS进行交互,即可对域名进行重新调度,效率较高。
在重新从目标域名集合中筛选第二内容分发网络域名时,若请求模式为随机选取域名模式,则可以从目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为第二内容分发网络域名;在资源获取请求指示的请求模式为指定选取域名模式的情况下,从目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为第二内容分发网络域名。也即,在域名出现异常时,若请求模式为随机选取域名模式,则将其切换为指定选取域名模式,防止重复随机选中出现异常的域名。
进一步的,随时间推移,域名可能恢复正常,可以在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,逐渐提高域名的可用度权重,当域名出现异常时,再降低域名的可用度权重,从而实现可用度权重的动态平衡。
这里,在上调可用度权重后,可以将上调后超过预设最大值的可用度权重调整为预设最大值,从而防止出现可用度权重超出上限的情况。
进一步的,若重新筛选第二预设阈值时,没有可用度权重高于
参见图2所示,为本公开实施例提供的另一种内容分发网络域名调度方法的流程图,该方法首先响应于客户端的资源获取请求,判断当前采用的请求模式,若是随机选取域名模式,则根据可用度权重选取域名;若请求模式为指定选取域名模式,则选取采用资源获取请求指定的域名,或按顺序选取第一个可用且未被选取过的域名;之后,可以将资源获取请求发送至当前域名对应的服务器,并判断是否请求成功,若未成功,则判断当前是否为随机选取域名模式,若是,则将随机选取域名模式修改为指定选取域名模式,之后,可以判断是否还有可用域名,若还存在可用域名,则将之前选取域名的可用度权重降低,并返回指定选取域名模式下确定所用域名的步骤,重新选取域名并发起请求。
本公开实施例提供的内容分发网络域名调度方法,该方法首先响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;然后,确定所述第一内容分发网络域名所在的目标域名集合;其次,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;最后,将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。本公开实施实例通过目标域名集合中各个内容分发网络域名的可用度权重,为客户端选择第二内容分发网络域名,可以在不与DNS或服务器交互的情况下配置可用的域名,域名调度效率较高,响应速度更快。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与内容分发网络域名调度方法对应的内容分发网络域名调度装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述内容分发网络域名调度方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图3所示,为本公开实施例提供的一种内容分发网络域名调度装置的示意图,所述装置包括:
第一确定模块310,用于响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
第二确定模块320,用于确定所述第一内容分发网络域名所在的目标域名集合;
筛选模块330,用于基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
发送模块340,用于将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
一种可选的实施方式中,所述第一确定模块310在响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名时,用于:
响应于客户端的主线程发起的资源获取请求,调用所述客户端的背景线程确定所述资源获取请求指示的第一内容分发网络域名。
一种可选的实施方式中,所述第二确定模块320在确定所述第一内容分发网络域名所在的目标域名集合时,用于:
从多个预先生成的内容分发网络域名集合中查找所述第一内容分发网络域名,并将查找到所述第一内容分发网络域名的内容分发网络域名集合作为所述目标域名集合;
所述装置还包括生成模块,用于:
以预设时长为周期,获取与所述客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名;
为各个可用内容分发网络域名生成初始化的可用度权重,并基于所述可用度权重生成各个目标资源对应的内容分发网络域名集合。
一种可选的实施方式中,所述筛选模块330在基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名时,用于:
根据所述可用度权重为所述目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;
从所述抽选单位中随机抽取一个目标抽选单位;
将所述目标抽选单位对应的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块330在基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名时,用于:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,将所述第一内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块330还用于:
在所述第一服务器未能在第一预设时长内反馈资源信息的情况下,将所述第二内容分发网络域名的可用度权重下调第一预设阈值,并重新从所述目标域名集合中筛选所述第二内容分发网络域名。
一种可选的实施方式中,所述筛选模块330在重新从所述目标域名集合中筛选所述第二内容分发网络域名时,用于:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,将所述资源获取请求指示的请求模式调整为指定选取域名模式,并重新从所述目标域名集合中筛选所述第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,从所述目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述装置还包括调整模块,用于:
在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,并将上调后的超过所述预设最大值的可用度权重调整为所述预设最大值。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
对应于图1中的内容分发网络域名调度方法,本公开实施例还提供了一种电子设备400,如图4所示,为本公开实施例提供的电子设备400结构示意图,包括:
处理器41、存储器42、和总线43;存储器42用于存储执行指令,包括内存421和外部存储器422;这里的内存421也称内存储器,用于暂时存放处理器41中的运算数据,以及与硬盘等外部存储器422交换的数据,处理器41通过内存421与外部存储器422进行数据交换,当所述电子设备400运行时,所述处理器41与所述存储器42之间通过总线43通信,使得所述处理器41执行以下指令:
响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
确定所述第一内容分发网络域名所在的目标域名集合;
基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
一种可选的实施方式中,所述处理器41执行的指令中,所述响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名,包括:
响应于客户端的主线程发起的资源获取请求,调用所述客户端的背景线程确定所述资源获取请求指示的第一内容分发网络域名。
一种可选的实施方式中,所述处理器41执行的指令中,所述确定所述第一内容分发网络域名所在的目标域名集合,包括:
从多个预先生成的内容分发网络域名集合中查找所述第一内容分发网络域名,并将查找到所述第一内容分发网络域名的内容分发网络域名集合作为所述目标域名集合;
所述处理器41还用于执行:
以预设时长为周期,获取与所述客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名;
为各个可用内容分发网络域名生成初始化的可用度权重,并基于所述可用度权重生成各个目标资源对应的内容分发网络域名集合。
一种可选的实施方式中,所述处理器41执行的指令中,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
根据所述可用度权重为所述目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;
从所述抽选单位中随机抽取一个目标抽选单位;
将所述目标抽选单位对应的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述处理器41执行的指令中,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,将所述第一内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述处理器41执行的指令中,还包括:
在所述第一服务器未能在第一预设时长内反馈资源信息的情况下,将所述第二内容分发网络域名的可用度权重下调第一预设阈值,并重新从所述目标域名集合中筛选所述第二内容分发网络域名。
一种可选的实施方式中,所述处理器41执行的指令中,重新从所述目标域名集合中筛选所述第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,将所述资源获取请求指示的请求模式调整为指定选取域名模式,并重新从所述目标域名集合中筛选所述第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,从所述目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为所述第二内容分发网络域名。
一种可选的实施方式中,所述处理器41执行的指令中,还包括:
在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,并将上调后的超过所述预设最大值的可用度权重调整为所述预设最大值。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的内容分发网络域名调度方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的内容分发网络域名调度方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

Claims (11)

1.一种内容分发网络域名调度方法,其特征在于,应用于客户端,包括:
响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
确定所述第一内容分发网络域名所在的目标域名集合;
基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并将所述第一服务器反馈的资源信息发送至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名,包括:
响应于客户端的主线程发起的资源获取请求,调用所述客户端的背景线程确定所述资源获取请求指示的第一内容分发网络域名。
3.根据权利要求1所述的方法,其特征在于,所述确定所述第一内容分发网络域名所在的目标域名集合,包括:
从多个预先生成的内容分发网络域名集合中查找所述第一内容分发网络域名,并将查找到所述第一内容分发网络域名的内容分发网络域名集合作为所述目标域名集合;
通过以下步骤生成所述内容分发网络域名集合:
以预设时长为周期,获取与所述客户端加载过的目标页面对应的目标资源所匹配的多个可用内容分发网络域名;
为各个可用内容分发网络域名生成初始化的可用度权重,并基于所述可用度权重生成各个目标资源对应的内容分发网络域名集合。
4.根据权利要求1所述的方法,其特征在于,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
根据所述可用度权重为所述目标域名集合中的各个内容分发网络域名生成相应数量的抽选单位;
从所述抽选单位中随机抽取一个目标抽选单位;
将所述目标抽选单位对应的内容分发网络域名作为所述第二内容分发网络域名。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,将所述第一内容分发网络域名作为所述第二内容分发网络域名。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述第一服务器未能在第一预设时长内反馈资源信息的情况下,将所述第二内容分发网络域名的可用度权重下调第一预设阈值,并重新从所述目标域名集合中筛选所述第二内容分发网络域名。
7.根据权利要求6所述的方法,其特征在于,重新从所述目标域名集合中筛选所述第二内容分发网络域名,包括:
在所述资源获取请求指示的请求模式为随机选取域名模式的情况下,将所述资源获取请求指示的请求模式调整为指定选取域名模式,并重新从所述目标域名集合中筛选所述第二内容分发网络域名;
在所述资源获取请求指示的请求模式为指定选取域名模式的情况下,从所述目标域名集合中按照顺序筛选出可用度权重不为零且尚未选取过的内容分发网络域名作为所述第二内容分发网络域名。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在经过第二预设时长后,将低于预设最大值的可用度权重上调第二预设阈值,并将上调后的超过所述预设最大值的可用度权重调整为所述预设最大值。
9.一种内容分发网络域名调度装置,其特征在于,用于客户端,包括:
第一确定模块,用于响应于客户端的资源获取请求,确定所述资源获取请求指示的第一内容分发网络域名;
第二确定模块,用于确定所述第一内容分发网络域名所在的目标域名集合;
筛选模块,用于基于所述目标域名集合中各个内容分发网络域名的可用度权重,从所述目标域名集合中筛选出第二内容分发网络域名;
发送模块,用于将所述资源获取请求发送至所述第二内容分发网络域名对应的第一服务器,并接收所述第一服务器反馈的资源信息。
10.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一所述的内容分发网络域名调度方法的步骤。
11.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至8任意一项所述的内容分发网络域名调度方法的步骤。
CN202210242502.XA 2022-03-11 2022-03-11 一种内容分发网络域名调度方法及装置 Active CN114615276B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210242502.XA CN114615276B (zh) 2022-03-11 2022-03-11 一种内容分发网络域名调度方法及装置
PCT/CN2023/074321 WO2023169106A1 (zh) 2022-03-11 2023-02-03 一种内容分发网络域名调度方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210242502.XA CN114615276B (zh) 2022-03-11 2022-03-11 一种内容分发网络域名调度方法及装置

Publications (2)

Publication Number Publication Date
CN114615276A true CN114615276A (zh) 2022-06-10
CN114615276B CN114615276B (zh) 2024-01-26

Family

ID=81863849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210242502.XA Active CN114615276B (zh) 2022-03-11 2022-03-11 一种内容分发网络域名调度方法及装置

Country Status (2)

Country Link
CN (1) CN114615276B (zh)
WO (1) WO2023169106A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023169106A1 (zh) * 2022-03-11 2023-09-14 北京字节跳动网络技术有限公司 一种内容分发网络域名调度方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519409A (zh) * 2019-08-28 2019-11-29 北京思维造物信息科技股份有限公司 域名动态配置方法、装置、设备及存储介质
US20200186613A1 (en) * 2018-12-11 2020-06-11 Level 3 Communications, Llc Systems and methods for processing requests for content of a content distribution network
CN111556135A (zh) * 2020-04-26 2020-08-18 北京奇艺世纪科技有限公司 一种请求调度方法、系统、装置及电子设备
CN111614736A (zh) * 2020-04-30 2020-09-01 北京金山云网络技术有限公司 网络内容资源调度方法、域名调度服务器及电子设备
CN113938462A (zh) * 2020-12-28 2022-01-14 京东科技控股股份有限公司 域名解析方法、装置、电子设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103237089A (zh) * 2013-05-16 2013-08-07 广东睿江科技有限公司 基于dns轮询方式网页的修复方法、装置和服务器
US20180113946A1 (en) * 2016-10-25 2018-04-26 Google Inc. Method and device for domain web page registration
CN110381081B (zh) * 2019-08-07 2023-07-18 上海视云网络科技有限公司 网络访问方法、装置及电子设备
CN114615276B (zh) * 2022-03-11 2024-01-26 抖音视界有限公司 一种内容分发网络域名调度方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200186613A1 (en) * 2018-12-11 2020-06-11 Level 3 Communications, Llc Systems and methods for processing requests for content of a content distribution network
CN110519409A (zh) * 2019-08-28 2019-11-29 北京思维造物信息科技股份有限公司 域名动态配置方法、装置、设备及存储介质
CN111556135A (zh) * 2020-04-26 2020-08-18 北京奇艺世纪科技有限公司 一种请求调度方法、系统、装置及电子设备
CN111614736A (zh) * 2020-04-30 2020-09-01 北京金山云网络技术有限公司 网络内容资源调度方法、域名调度服务器及电子设备
CN113938462A (zh) * 2020-12-28 2022-01-14 京东科技控股股份有限公司 域名解析方法、装置、电子设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023169106A1 (zh) * 2022-03-11 2023-09-14 北京字节跳动网络技术有限公司 一种内容分发网络域名调度方法及装置

Also Published As

Publication number Publication date
CN114615276B (zh) 2024-01-26
WO2023169106A1 (zh) 2023-09-14

Similar Documents

Publication Publication Date Title
Moschakis et al. Multi-criteria scheduling of Bag-of-Tasks applications on heterogeneous interlinked clouds with simulated annealing
CN106657193B (zh) 一种请求处理方法、装置、终端设备及服务器
CN108399101B (zh) 资源调度的方法、装置和系统
EP3355187A1 (en) Loading method and device for terminal application (app)
EP3353652A1 (en) System and method for processing task resources
CN110795203B (zh) 资源调度方法、装置、系统和计算设备
CN111522641A (zh) 任务调度方法、装置、计算机设备和存储介质
CN113127192B (zh) 一种多个服务共享同一个gpu的方法、系统、设备及介质
CN106257893A (zh) 存储服务器任务响应方法、客户端、服务器及系统
CN110233741B (zh) 服务计费方法、装置、设备及存储介质
CN111092921B (zh) 数据采集方法、装置及存储介质
CN109614227A (zh) 任务资源调配方法、装置、电子设备及计算机可读介质
CN114615340A (zh) 一种请求处理方法、装置、计算机设备和存储装置
CN111694756A (zh) 一种应用程序测试方法及装置
CN113676501A (zh) 基于Kubernetes集群的应用部署方法、装置以及电子设备
CN107172214A (zh) 一种具有负载均衡的服务节点发现方法及装置
CN114615276A (zh) 一种内容分发网络域名调度方法及装置
CN114760357A (zh) 一种请求处理方法、装置、计算机设备和存储介质
CN105183582B (zh) 数据备份方法及装置
CN114721742A (zh) 应用程序的启动优化方法、装置、计算机设备及存储介质
CN114615336A (zh) 一种请求调度方法、装置、计算机设备和存储介质
CN112463376A (zh) 一种资源分配方法及装置
CN115454574A (zh) 容器的部署方法、装置及电子设备
CN114579127A (zh) 一种页面部署方法、装置、计算机设备和存储介质
CN109617954B (zh) 一种创建云主机的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: Tiktok vision (Beijing) Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant