CN113037861A - 服务节点连接方法及装置 - Google Patents

服务节点连接方法及装置 Download PDF

Info

Publication number
CN113037861A
CN113037861A CN202110322621.1A CN202110322621A CN113037861A CN 113037861 A CN113037861 A CN 113037861A CN 202110322621 A CN202110322621 A CN 202110322621A CN 113037861 A CN113037861 A CN 113037861A
Authority
CN
China
Prior art keywords
data center
priority
service node
speed measurement
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
CN202110322621.1A
Other languages
English (en)
Other versions
CN113037861B (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 QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202110322621.1A priority Critical patent/CN113037861B/zh
Publication of CN113037861A publication Critical patent/CN113037861A/zh
Application granted granted Critical
Publication of CN113037861B publication Critical patent/CN113037861B/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例提供了一种服务节点连接方法及装置。所述方法包括:接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点,实时选择最优节点,提升响应速度,提高用户体验;本申请实施例解决了现有技术中,DNS对服务节点的调度方式,容易导致用户访问服务节点的速度较慢的问题。

Description

服务节点连接方法及装置
技术领域
本申请涉及计算机技术领域,特别是涉及一种服务节点连接方法及装置。
背景技术
目前,为了向应用程序提供高质量的数据服务,服务端通常部署多个服务节点,每个服务节点设置一个数据中心,各个数据中心向应用程序提供数据服务。而对于服务范围较为广泛的应用程序来说,各地区网络基础建设差异较大,网络链路错综复杂,通常情况下,域名***(Domain Name System,DNS)以地区作为维度为应用程序调度服务节点,调度的策略基本以数据观察,人工调整配置为主,比如A地的用户调度到A地机房,B地的用户调度到B地机房,但这存在调整的延时性,而且同一地区不同运营商对同一节点提供的访问质量也相差较大,难以精准的为所有用户调配最优的网络链路提供服务,容易导致用户访问服务节点的速度较慢,影响用户体验。
发明内容
本申请实施例的目的在于提供一种服务节点连接方法及装置,以解决现有技术中,DNS对服务节点的调度方式,容易导致用户访问服务节点的速度较慢的问题。
具体技术方案如下:
在本申请实施的第一方面,首先提供了一种服务节点连接方法,所述方法包括:
接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。
根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
可选地,所述确定每个所述数据中心的优先级包括:
向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
根据所述响应时间,确定每个所述数据中心的优先级。
可选地,所述优先级与所述响应时间成反比例关系。
可选地,所述应用程序包括软件开发工具包SDK模块;
所述SDK模块用于确定每个所述数据中心的优先级;
所述SDK模块包括缓存区域,所述缓存区域中存储所述目标数据中心的IP地址。
可选地,所述数据中心包括测速接口;
所述向每个所述数据中心的IP地址发送测速请求,包括:
向每个所述数据中心的IP地址对应的测速接口发送测速请求。
在本申请实施的第二方面,还提供了一种服务节点连接装置,所述装置包括:
请求接收模块,用于接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
优先级确定模块,用于确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。
连接模块,用于根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
可选地,所述优先级确定模块包括:
发送子模块,用于向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
确定子模块,用于根据所述响应时间,确定每个所述数据中心的优先级。
可选地,所述优先级与所述响应时间成反比例关系。
可选地,所述应用程序包括软件开发工具包SDK模块;
所述SDK模块用于确定每个所述数据中心的优先级;
所述SDK模块包括缓存区域,所述缓存区域中存储所述目标数据中心的IP地址。
可选地,所述数据中心包括测速接口;
所述发送子模块用于:
向每个所述数据中心的IP地址对应的测速接口发送测速请求。
在本申请实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的服务节点连接方法。
在本申请实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的服务节点连接方法。
本申请实施例提供的服务节点连接方法及装置,通过接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;确定每个所述数据中心的优先级;根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点,实时选择最优节点,提升响应速度,提高用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本申请实施例中提供的服务节点连接方法的步骤流程图;
图2为本申请实施例中提供的第三示例的示意图之一;
图3为本申请实施例中提供的第三示例的示意图之二;
图4为本申请实施例中提供的服务节点连接装置的框图;
图5为本申请实施例中提供的电子设备的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
在本申请的各种实施例中,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
参见图1,本申请一实施例提供了一种服务节点连接方法,所述方法包括:
步骤101,接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
步骤102,确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。
步骤103,根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
其中,本申请实施例可应用于所述应用程序,或者所述应用程序内用于解析DNS的DNS模块,为了便于说明,本申请实施例中以所述方法应用于所述应用程序为例进行说明,可以理解的是,所述方法应用于所述DNS模块时与本申请实施例的过程相同,在此不再赘述。
步骤101中,所述域名解析请求可以是应用程序启动(或初始化)时发送的,或应用程序与其服务器断开通信连接并重新连接(例如应用程序所在电子设备发送网络切换、网络断开)时发送的。
应用程序在启动时或与服务器断开连接并重连时,向DNS模块发送域名解析请求,域名解析请求中携带所请求的目标域名,目标域名指示应用程序待连接的服务节点;可选地,服务节点可以是应用程序的服务器;DNS模块接收到域名解析请求并获得其中所请求的目标域名之后,获取与目标域名对应的至少两个数据中心的网际互连协议(InternetProtocol,IP)地址。
其中,每个所述数据中心对应一服务节点,每个所述服务节点可设置于不同的地理范围区域内,例如跨省设置,甚至在海外设置。可选地,所述应用程序可通过DNS模块从DNS服务器中获取每个数据中心的IP地址,DNS服务器可预先记载每个数据中心的IP地址。
步骤102中,确定每个数据中心的IP地址之后,所述应用程序确定每个数据中心的优先级;具体地,所述优先级为根据每个数据中心针对测速请求的响应时间确定的,测速请求用于测试所述应用程序与每个所述数据中心的响应时间,以根据响应时间判断连接速度,通常情况下,响应时间与连接速度之间成反比例关系;也即响应时间越短,连接速度越快,则优先级越高。
可选地,所述应用程序可通过DNS模块向每个数据中心发送一连接请求,并等待数据中心的响应消息,进而得到响应时间,用于判断每个数据中心的优先级。
步骤103中,所述应用程序确定每个数据中心的优先级之后,优先选择优先级高的数据中心作为目标数据中心,比如所述应用程序可连接的数据中心中,选择优先级最高的数据中心作为目标数据中心;或者进一步判断优先级较高的几个可选数据中心的其他参数,例如传输控制协议(TCP,Transmission Control Protocol)握手耗时、首包耗时、总耗时等参数;然后进一步从中选择目标数据中心,将所述应用程序本次启动后连接至目标数据中心对应的目标服务节点,实时动态选择服务节点,不再单以地理位置作为选择依据。
作为第一示例,应用程序X当前所处的地理位置为A地,A地对应的服务节点为B节点,而应用程序X可连接的其他地区的服务节点包括C节点、D节点以及E节点;其中,C节点与B节点之间跨市设置,D节点与B节点之间跨省设置,E节点与B节点之间跨国设置;在应用程序启动或与服务器断开连接并重连之后,首先向每个服务节点发送测速请求,然后根据测速请求的响应时间确定每个服务节点的优先级;然后选择优先级最高的服务节点,例如为D节点作为目标服务节点。
这样,根据每个服务节点的响应时间,选择应用程序所连接的目标服务节点,通过对数据中心进行测速,实时选择最优节点,不再以地理位置作为单一维度进行服务节点调度;且应用程序可实现自动化动态调整网络链路,无需通过人工方式进行手动配置,实现在应用程序的用户粒度内选择最优的服务节点访问。
本申请实施例中,接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;确定每个所述数据中心的优先级;根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点,实时选择最优节点,提升响应速度,提高用户体验;本申请实施例解决了现有技术中,DNS对服务节点的调度方式,容易导致用户访问服务节点的速度较慢的问题。
在一个可选实施例中,所述确定每个所述数据中心的优先级,包括:
向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
根据所述响应时间,确定每个所述数据中心的优先级。
其中,所述应用程序可通过DNS模块向每个数据中心发送一测速请求,并等待数据中心针对所述测速请求的响应消息,进而得到响应时间;可选地,响应时间可以为所述测速请求的发出时间与所述响应消息接收时间之间的时间差;得到响应时间后,可根据响应时间确定每个数据中心的优先级。
响应时间用于判断每个数据中心的优先级,所述应用程序确定每个数据中心的优先级之后,优先选择优先级高的数据中心作为目标数据中心。
在一个可选实施例中,所述优先级与所述响应时间成反比例关系,也即响应时间越短,连接速度越快,则优先级越高。可以理解的是,除响应时间外,所述优先级还可包括其他参数,例如预先设定的初始优先级参数,在得到响应时间之后,可采用预设的权值,对响应时间与所述初始优先级参数进行加权求和,得到综合权值作为数据中心的优先级。
在一个可选实施例中,所述应用程序包括软件开发工具包模块;
所述SDK模块用于确定每个所述数据中心的优先级;
所述SDK模块包括缓存区域,所述缓存区域中存储所述目标数据中心的IP地址。
目前,在大型工程应用程序(Application,APP)中,为了实现程序代码的高复用率以及低耦合率,通常将一个模块的代码逻辑封装为一个软件开发工具包(SoftwareDevelopment Kit,SDK)中,本申请实施例中,SDK模块可以是执行DNS功能的DNS模块;SDK模块用于确定每个所述数据中心的优先级,具体包括向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间,然后根据所述响应时间,确定每个所述数据中心的优先级。
此外,SDK模块还包括缓存区域(例如高速缓冲存储器cache),所述缓存区域中存储所述目标数据中心的IP地址,当应用程序需要连接服务节点时,从SDK模块获取目标数据中心的IP地址,提升响应速度。可以理解的是,目标数据中心可以具有一个或多个,当有多个时,应用程序可优先连接优先级较高的目标数据中心的IP地址。
在一个可选实施例中,所述数据中心包括测速接口;
所述向每个所述数据中心的IP地址发送测速请求,包括:
向每个所述数据中心的IP地址对应的测速接口发送测速请求。
其中,测速接口用于接收测速请求,并向所述应用程序反馈响应消息;由于服务节点内所存储的内容实时变化,通过设置测速专用的测试接口,避免通过服务节点(服务器)的其他接口进行测速时被服务节点的缓存影响测速结果。
作为第二示例,在A地、B地、C地三个机房搭建应用程序X的三个服务节点的数据中心,对应的ip分别为ipA、ipB、ipC,并分别对外提供动态测速接口urlA、urlB、urlC;其中,A地与B地位于不同省,C地与A地、B地位于不同国家;
应用程序X通过域名管理***将ipA、ipB、ipC分别添加到服务域名的记录列表Y中,应用程序X初始化时获取记录列表Y,对动态测速接口urlA、urlB、urlC发起测速请求,并获取对应的响应时间timeA、timeB、timeC;
将ipA、ipB、ipC根据timeA、timeB、timeC从小到大进行排序,例如timeB<timeA<timeC,则应用程序X选取耗时最短的数据中心B作为最终的服务访问节点,同时将ipA、ipB、ipC按优先级放入缓存中,避免启动之后每次请求都需要重新测速;此外,数据中心B还可上报传输控制协议(TCP,Transmission Control Protocol)握手耗时、首包耗时、总耗时到日志中心等采纳数,通过数据采集、数据分析、报表展示监控服务效果,并进行更优的策略调整。
作为第三示例,参见图2,图2中以APP包括DNS模块为例,介绍本申请实施例提供的服务节点连接的具体应用过程,主要包括以下步骤:
在APP启动之前,DNS服务器预先执行步骤a,以及各个数据中心预先执行步骤b;为了便于说明,图2中仅示意一个数据中心,而实际应用过程中包括至少两个数据中心。
步骤a,DNS服务器添加各数据中心IP到列表Y中。
DNS服务器预先记载每个数据中心的IP地址,并形成列表Y。
步骤b,数据中心提供测试接口。
测速接口用于接收测速请求,并向所述应用程序反馈响应消息;由于服务节点内所存储的内容实时变化,通过设置测速专用的测试接口,避免通过服务节点(服务器)的其他接口进行测速时被服务节点的缓存影响测速结果。
APP启动,执行步骤1,向DNS模块发送域名解析请求。
域名解析请求中携带所请求的目标域名,目标域名指示应用程序待连接的服务节点。
步骤2,DNS模块接收到域名解析请求,从DNS服务器中获取列表Y。
DNS模块接收到域名解析请求并获得其中所请求的目标域名之后,从DNS服务器中获取列表Y中与目标域名对应的至少两个数据中心的IP地址。
步骤3,DNS模块获取列表Y中记载的IP地址。
步骤4,DNS模块向每个数据中心发送测速请求。
步骤5,DNS模块接收每个数据中心的响应消息,确定响应时间;
DNS模块向每个数据中心发送一测速请求,并等待数据中心针对所述测速请求的响应消息,进而得到响应时间。
步骤6,根据响应时间排序,得到各数据中心优先级。
步骤7,将优先级最高的前N个数据中心的IP地址存储缓存中。
响应时间用于判断每个数据中心的优先级,所述应用程序确定每个数据中心的优先级之后,优先选择优先级高的数据中心作为目标数据中心。
步骤8,APP从DNS缓存中获取目标数据中心。
步骤9,APP连接至目标数据中心。
当应用程序需要连接服务节点时,从DNS缓存获取目标数据中心的IP地址,提升响应速度。
进一步地,作为一个可选实现方式,APP获得数据中心的IP地址的过程如图3所示:
步骤301,APP启动或与服务器重新建立连接,向DNS模块发送DNS解析请求;
步骤302,DNS模块向名称服务器发送DNS获取请求;
步骤303,名称服务器向DNS数据库发送列表Y获取请求;DNS数据库响应所述列表Y获取请求,向名称服务器反馈列表Y;
至此,名称服务器完成从DNS数据库中获得列表Y。
此外,DNS服务器还执行步骤311,添加数据中心IP到列表Y中,并将列表Y存储至DNS数据库,例如DNS服务器按照预设周期执行步骤311,或者检测到数据中心IP更新时执行步骤311,或者接收到IP更新请求时执行步骤311。
本申请上述实施例中,接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;确定每个所述数据中心的优先级;根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点,实时选择最优节点,提升响应速度,提高用户体验。
参见图4,本申请实施例还提供了一种服务节点连接装置,所述装置包括:
请求接收模块401,用于接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
优先级确定模块402,用于确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。
连接模块403,用于根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
其中,本申请实施例可应用于所述应用程序,或者所述应用程序内用于解析DNS的DNS模块,为了便于说明,本申请实施例中以所述方法应用于所述应用程序为例进行说明,可以理解的是,所述方法应用于所述DNS模块时与本申请实施例的过程相同,在此不再赘述。
所述域名解析请求可以是应用程序启动(或初始化)时发送的,或应用程序与其服务器断开通信连接并重新连接(例如应用程序所在电子设备发送网络切换、网络断开)时发送的。
应用程序在启动时或与服务器断开连接并重连时向DNS模块发送域名解析请求,域名解析请求中携带所请求的目标域名,目标域名指示应用程序待连接的服务节点;可选地,服务节点可以是应用程序的服务器;请求接收模块401接收到域名解析请求并获得其中所请求的目标域名之后,获取与目标域名对应的至少两个数据中心的IP地址。
其中,每个所述数据中心对应一服务节点,每个所述服务节点可设置于不同的地理范围区域内,例如跨省设置,甚至在海外设置。可选地,所述应用程序可通过DNS模块从DNS服务器中获取每个数据中心的IP地址,DNS服务器可预先记载每个数据中心的IP地址。
确定每个数据中心的IP地址之后,优先级确定模块402确定每个数据中心的优先级;具体地,所述优先级为根据每个数据中心针对测速请求的响应时间确定的,测速请求用于测试所述应用程序与每个所述数据中心的响应时间,以根据响应时间判断连接速度,通常情况下,响应时间与连接速度之间成反比例关系;也即响应时间越短,连接速度越快,则优先级越高。
可选地,所述应用程序可通过DNS模块向每个数据中心发送一连接请求,并等待数据中心的响应消息,进而得到响应时间,用于判断每个数据中心的优先级。
确定每个数据中心的优先级之后,连接模块403优先选择优先级高的数据中心作为目标数据中心,比如所述应用程序可连接的数据中心中,选择优先级最高的数据中心作为目标数据中心;或者进一步判断优先级较高的几个可选数据中心的其他参数,例如传输控制协议(TCP,Transmission Control Protocol)握手耗时、首包耗时、总耗时等参数;然后进一步从中选择目标数据中心,将所述应用程序本次启动后连接至目标数据中心对应的目标服务节点,实时动态选择服务节点,不再单以地理位置作为选择依据。
作为第一示例,应用程序X当前所处的地理位置为A地,A地对应的服务节点为B节点,而应用程序X可连接的其他地区的服务节点包括C节点、D节点以及E节点;在应用程序启动之后,首先向每个服务节点发送测速请求,然后根据测速请求的响应时间确定每个服务节点的优先级;然后选择优先级最高的服务节点,例如为D节点作为目标服务节点。
这样,根据每个服务节点的响应时间,选择应用程序所连接的目标服务节点,通过对数据中心进行测速,实时选择最优节点,不再以地理位置作为单一维度进行服务节点调度;且应用程序可实现自动化动态调整网络链路,无需通过人工方式进行手动配置,实现在应用程序的用户粒度内选择最优的服务节点访问。
可选地,本申请实施例中,所述优先级确定模块402包括:
发送子模块,用于向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
确定子模块,用于根据所述响应时间,确定每个所述数据中心的优先级。
可选地,本申请实施例中,所述优先级与所述响应时间成反比例关系。
可选地,本申请实施例中,所述应用程序包括软件开发工具包SDK模块;
所述SDK模块用于确定每个所述数据中心的优先级;
所述SDK模块包括缓存区域,所述缓存区域中存储所述目标数据中心的IP地址。
可选地,本申请实施例中,所述数据中心包括测速接口;
所述发送子模块用于:
向每个所述数据中心的IP地址对应的测速接口发送测速请求。
本申请上述实施例中,请求接收模块401接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;优先级确定模块402确定每个所述数据中心的优先级;连接模块403根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点,实时选择最优节点,提升响应速度,提高用户体验。
本申请实施例还提供了一种电子设备,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,
存储器53,用于存放计算机程序;
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的。
根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的服务节点连接方法。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的服务节点连接方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (10)

1.一种服务节点连接方法,其特征在于,包括:
接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的;
根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
2.根据权利要求1所述的服务节点连接方法,其特征在于,所述确定每个所述数据中心的优先级包括:
向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
根据所述响应时间,确定每个所述数据中心的优先级。
3.根据权利要求1或2所述的服务节点连接方法,其特征在于,所述优先级与所述响应时间成反比例关系。
4.根据权利要求2所述的服务节点连接方法,其特征在于,所述应用程序包括软件开发工具包SDK模块;
所述SDK模块用于确定每个所述数据中心的优先级;
所述SDK模块包括缓存区域,所述缓存区域中存储所述目标数据中心的IP地址。
5.根据权利要求2所述的服务节点连接方法,其特征在于,所述数据中心包括测速接口;
所述向每个所述数据中心的IP地址发送测速请求,包括:
向每个所述数据中心的IP地址对应的测速接口发送测速请求。
6.一种服务节点连接装置,其特征在于,包括:
请求接收模块,用于接收域名解析请求,获取所述域名解析请求所请求的目标域名对应的至少两个数据中心的网际互连协议IP地址;其中,每个所述数据中心对应一服务节点;
优先级确定模块,用于确定每个所述数据中心的优先级;其中,所述优先级为根据每个数据中心针对测速请求的响应时间确定的;所述测速请求为应用程序向每个所述数据中心的IP地址发送的;
连接模块,用于根据所述优先级,选择所述数据中心中的目标数据中心,并连接所述目标数据中心对应的目标服务节点。
7.根据权利要求6所述的服务节点连接装置,其特征在于,所述优先级确定模块包括:
发送子模块,用于向每个所述数据中心的IP地址发送测速请求,接收所述数据中心针对所述测速请求的响应消息,并确定响应时间;
确定子模块,用于根据所述响应时间,确定每个所述数据中心的优先级。
8.根据权利要求6或7所述的服务节点连接装置,其特征在于,所述优先级与所述响应时间成反比例关系。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1至5中任一所述的服务节点连接方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5中任一所述的服务节点连接方法。
CN202110322621.1A 2021-03-25 2021-03-25 服务节点连接方法及装置 Active CN113037861B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110322621.1A CN113037861B (zh) 2021-03-25 2021-03-25 服务节点连接方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110322621.1A CN113037861B (zh) 2021-03-25 2021-03-25 服务节点连接方法及装置

Publications (2)

Publication Number Publication Date
CN113037861A true CN113037861A (zh) 2021-06-25
CN113037861B CN113037861B (zh) 2023-08-22

Family

ID=76474002

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110322621.1A Active CN113037861B (zh) 2021-03-25 2021-03-25 服务节点连接方法及装置

Country Status (1)

Country Link
CN (1) CN113037861B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102196060A (zh) * 2011-06-15 2011-09-21 北京蓝汛通信技术有限责任公司 一种Cache服务器选择源站的方法和***
CN104092791A (zh) * 2014-07-11 2014-10-08 中国科学院声学研究所 一种综合质量与成本的互联网内容资源调度方法和***
CN105939399A (zh) * 2015-11-30 2016-09-14 杭州迪普科技有限公司 一种域名解析方法和装置
CN108011995A (zh) * 2017-12-19 2018-05-08 北京星河星云信息技术有限公司 异地多活的实现方法、异地多活服务平台及存储介质
WO2020211364A1 (zh) * 2019-04-16 2020-10-22 平安科技(深圳)有限公司 实现网关异地多活的方法、装置、计算机设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102196060A (zh) * 2011-06-15 2011-09-21 北京蓝汛通信技术有限责任公司 一种Cache服务器选择源站的方法和***
CN104092791A (zh) * 2014-07-11 2014-10-08 中国科学院声学研究所 一种综合质量与成本的互联网内容资源调度方法和***
CN105939399A (zh) * 2015-11-30 2016-09-14 杭州迪普科技有限公司 一种域名解析方法和装置
CN108011995A (zh) * 2017-12-19 2018-05-08 北京星河星云信息技术有限公司 异地多活的实现方法、异地多活服务平台及存储介质
WO2020211364A1 (zh) * 2019-04-16 2020-10-22 平安科技(深圳)有限公司 实现网关异地多活的方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN113037861B (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
CN109561141B (zh) 一种cdn节点的选择方法及设备
US11019512B2 (en) Providing easy access to radio networks
CN102859942B (zh) 使用dns反射来测量网络性能
CN109547286B (zh) 一种cdn节点的选择方法、设备及存储介质
KR102110741B1 (ko) Wi-Fi 핫스팟 추천 방법, 단말기 및 그래픽 사용자 인터페이스
CN103023762A (zh) 云计算接入网关及用于提供用户终端接入云提供商的方法
CN106534289B (zh) 自动化测试方法、装置及***
CN110830565B (zh) 资源下载方法、装置、***、电子设备及存储介质
EP3272077A1 (en) Diagnostic testing
CN109921925B (zh) 一种拨测方法及装置
CN109510809B (zh) 域名访问方法和装置
CN110177140B (zh) 一种用于客户端数据下载的ip调度***及方法
CN106507419A (zh) 连接WiFi热点的方法及装置
CN112118151A (zh) 网络测速方法、装置、***、电子设备及存储介质
CN111093182B (zh) 一种用于cpe设备的网络最优资源选择***
CN112165517A (zh) 一种回源探测方法、装置、存储介质及电子设备
WO2011009339A1 (zh) 一种数据传输的方法、***和装置
CN110958170B (zh) 一种网络互联方法和装置
CN113037861A (zh) 服务节点连接方法及装置
EP3593493A1 (en) Prediction of a performance indicator
KR101988444B1 (ko) 특정 기능의 호출에 응답하는 api 서버의 도메인 최적화 방법 및 이를 구현하는 단말기
CN111641732B (zh) 智能调度方法及装置
CN115695497A (zh) 诊断数据远程传输方法、装置、电子设备及介质
CN113691420A (zh) 监测cdn质量的方法、电子设备、服务器及存储介质
CN110166581A (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
GR01 Patent grant
GR01 Patent grant