CN110809064A - 一种ip地址切换方法、装置及系统 - Google Patents
一种ip地址切换方法、装置及系统 Download PDFInfo
- Publication number
- CN110809064A CN110809064A CN201910837012.2A CN201910837012A CN110809064A CN 110809064 A CN110809064 A CN 110809064A CN 201910837012 A CN201910837012 A CN 201910837012A CN 110809064 A CN110809064 A CN 110809064A
- Authority
- CN
- China
- Prior art keywords
- server
- address
- target
- preset
- request
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供了一种IP地址切换方法、装置及系统,其中,系统包括:客户端、云服务器和IP地址互不相同的多个服务器,云服务器分别与每个服务器连接,云服务器上运行有目标服务,目标服务用于获取每个服务器的状态,任意一个服务器的状态指示该服务器当前是否存在故障。客户端用于在满足第一预设条件的情况下,向云服务器发送第一请求,云服务器用于向客户端反馈IP列表,IP列表包括各个服务器的IP地址以及每个IP地址指示的服务器的状态,客户端还用于从IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,目标IP地址为响应目标交易请求的服务器的IP地址。本申请的方案可以使得切换到有效IP地址所需的时长缩短。
Description
技术领域
本申请涉及电子信息领域,尤其涉及一种IP地址切换方法、装置及系统。
背景技术
在异地双活架构或者异地多活架构中,存在多个服务器,不同服务器所配置的IP地址不同。当客户端接收到用户对交易请求的触发指令的情况下,客户端向DNS服务器发送交易请求,其中,交易请求中包括域名。DNS服务器依据各级路由层中预设IP地址,将交易请求中的域名解析为预设IP地址,并请求解析出的IP地址对应的服务器对该交易请求进行响应。
在预设IP地址对应的服务器发生故障的情况下,需要将各级路由层缓存的预设IP地址更换为当前无故障的服务器对应的IP地址(即有效IP地址),这个过程所需的时间较长。
因此,在预设IP地址对应的服务器发生故障的情况下,DNS服务器切换到有效IP地址所需的时长较长。
发明内容
本申请提供了一种IP地址的切换方法、装置及系统,目的在于解决切换到有效IP地址所需的时长较长的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请提供了一种IP地址切换系统,包括:客户端、云服务器和IP地址互不相同的多个服务器;所述云服务器分别与每个所述服务器连接;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;
所述客户端,用于在满足第一预设条件的情况下,向所述云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;
所述云服务器,用于向所述客户端反馈IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
所述客户端,还用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址指示的服务器用于响应目标交易请求;在所述第一预设条件下所述目标交易请求为所述发送时刻最晚的交易请求。
可选的,所述客户端用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
所述客户端,具体用于向各个非故障服务器分别发送预设URL,统计所述各个非故障服务器对所述预设URL的响应耗时,得到所述各个非故障服务器对所述预设URL的响应速度;将对所述预设URL响应最快的非故障服务器的IP地址为所述目标IP地址;所述非故障服务器为所述IP列表中状态表示不存在故障的服务器。
可选的,所述客户端,还用于在满足第二预设条件的情况下,向所述云服务器发送所述第一请求;所述第二预设条件包括:所述客户端启动、所述客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向所述云服务器发送所述第一请求的进程,或者,所述客户端检测到所述服务器的IP地址的状态存在更新;在所述第二预设条件下所述目标交易请求为交易请求触发指令所触发的交易请求。
可选的,所述客户端,还用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,向所述目标IP地址指示的服务器发送HTTP请求;所述HTTP请求中包括所述目标IP地址,并且,所述HTTP请求的消息头中添加有所述目标交易请求的域名。
可选的,还包括:DNS服务器;
所述客户端,还用于在满足第三预设条件的情况下,向所述DNS服务器发送所述目标交易请求;所述第三预设条件包括:所述目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况;
所述DNS服务器,用于对所述目标交易请求中的域名解析为预设IP地址;
所述DNS服务器,还用于将解析后的目标交易请求发送给所述预设IP地址指示的服务器。
可选的,所述云服务器,用于向所述客户端反馈IP列表,包括:
所述云服务器,具体用于对所述IP列表的内容进行签名,得到签名后的IP列表;向所述客户端发送所述签名后的IP列表。
本申请还提供了一种IP地址切换装置,应用于客户端,包括:
在满足第一预设条件的情况下,向云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;所述各个服务器的IP地址不同;
接收IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址为响应目标交易请求的服务器的IP地址;在所述第一预设条件的情况下,所述目标交易请求为所述发送时刻最晚的交易请求。
可选的,所述从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
向各个非故障服务器分别发送预设URL,统计所述各个非故障服务器对所述预设URL响应耗时,得到所述各个非故障服务器对所述预设URL的响应速度;所述非故障服务器为所述IP列表中状态表示不存在故障的服务器;
将对所述预设URL响应最快的非故障服务器的IP地址作为所述目标IP地址。
可选的,还包括:
在满足第二预设条件的情况下,向所述云服务器发送所述第一请求;所述第二预设条件包括:所述客户端启动、所述客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向所述云服务器发送所述第一请求的进程,或者,在所述客户端检测到所述服务器的状态存在更新;在所述第二预设条件下,所述目标交易请求为交易请求触发指令所触发的交易请求。
可选的,在所述从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,还包括:
向所述目标IP地址指示的服务器发送HTTP请求;所述HTTP请求中包括所述目标IP地址,并且,所述HTTP请求的消息头中添加有所述目标交易请求的域名。
可选的,还包括:
在满足第三预设条件的情况下,向DNS服务器发送所述目标交易请求,使得所述DNS服务器对所述目标交易请求中的域名解析为预设IP地址,并将解析后的目标交易请求发送给所述预设IP地址指示的服务器;
所述第三预设条件包括:所述目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况。
本申请还提供了一种IP地址切换装置,应用于客户端,包括:
发送模块,用于在满足第一预设条件的情况下,向云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;所述各个服务器的IP地址不同;
接收模块,用于接收IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
选取模块,用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址为响应目标交易请求的服务器的IP地址;在所述第一预设条件下,所述目标交易请求为所述发送时刻最晚的交易请求。
可选的,所述选取模块,用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
所述选取模块,具体用于向各个非故障服务器分别发送预设URL,统计所述各个非故障服务器对所述预设URL响应耗时,得到所述各个非故障服务器对所述预设URL的响应速度;所述非故障服务器为所述IP列表中状态表示不存在故障的服务器;
将对所述预设URL响应最快的非故障服务器的IP地址作为所述目标IP地址。
可选的,还包括:第一执行模块,用于在满足第二预设条件的情况下,向所述云服务器发送所述第一请求;所述第二预设条件包括:所述客户端启动、所述客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向所述云服务器发送所述第一请求的进程,或者,在所述客户端检测到所述服务器的状态存在更新;在所述第二预设条件下,所述目标交易请求为交易请求触发指令所触发的交易请求。
可选的,还包括:第二执行模块,用于在所述从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,向所述目标IP地址指示的服务器发送HTTP请求;所述HTTP请求中包括所述目标IP地址,并且,所述HTTP请求的消息头中添加有所述目标交易请求的域名。
可选的,还包括:第三执行模块,用于在满足第三预设条件的情况下,向DNS服务器发送所述目标交易请求,使得所述DNS服务器对所述目标交易请求中的域名解析为预设IP地址,并将解析后的目标交易请求发送给所述预设IP地址指示的服务器;
所述第三预设条件包括:所述目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况。
可选的,IP列表为签名后的IP列表。
本申请所述的IP地址的切换方案中,在已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障的情况下,向云服务器发送用于获取各个服务器的状态的请求,得到云服务器反馈的IP列表,该IP列表中包括各个服务器的状态和各个服务器的IP地址,其中,IP列表中包含的各个服务器的状态由云服务器上的目标服务获取的,从IP列表中选取状态表示不存在故障的服务器的IP地址作为目标IP地址,目标IP地址为响应目标交易请求的服务器的IP地址,其中,在第一预设条件下目标交易请求为发送时刻最晚的交易请求。
在本申请中,在已发送的交易请求中最晚发送的交易请求所请求的服务器发生故障的情况下,由于从云服务器获取IP列表,以及从IP列表中直接选取状态表示不存在故障的服务器的IP地址作为目标IP地址,该目标IP地址为响应该交易请求的服务器的IP地址,因此,通过该目标IP地址指示的服务器可以响应该目标交易请求,即可以响应发送时刻最晚的交易请求。并且,IP列表中包含的各个IP地址的状态由云服务器上的目标服务获取的,因此,客户端只需从云服务器直接获取即可,因此,相对于现有技术本申请切换IP地址的方案更加简单,因此,所需的时间相对于现有技术缩短。因此,在请求的服务器发生故障的情况下,本申请的方案可以使得切换到有效IP地址所需的时长缩短。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种IP地址切换系统的流程图;
图2为本申请实施例公开的一种IP地址切换方法的流程图;
图3为本申请实施例公开的一种IP地址切换装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种IP地址切换系统,包括:客户端、云服务器、DNS服务器和多个服务器,其中,多个服务器为响应交易请求的业务服务器,并且,该多个业务服务器为异地多活的服务器,以及该多个业务服务器的IP地址不同。
在本申请实施例中,云服务器和每个业务服务器连接,并且,云服务中运行有目标服务。目标服务用于获取每个业务服务器的状态,对于任意一个业务服务器的状态指示该业务服务器是否存在故障。例如,该业务服务器的状态为第一标识的情况下,表示该业务服务器无故障,该业务服务器的状态为第二标识的情况下,表示该业务服务器存在故障。在本实施例中,采用第一标识和第二标识来区分该业务服务器的状态(是否存在故障),仅为一种举例,在实际中,还可以采用其他方式来区分业务服务器的状态。
客户端、云服务器、业务服务器和DNS服务器间的交互流程,包括以下步骤:
S101、在满足第一预设条件或第二预设条件的情况下,客户端向云服务器发送第一请求。
在本步骤中,第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障。第一请求为用于获取各个业务服务器的状态和各个业务服务器的IP地址的请求。其中,客户端向云服务器发送第一请求的方式具体包括:根据用户的网络(2G、3G、4G、WIFI)、运营商(中国移动、中国联通和中国电信等)、客户端版本信息等向云服务器中运行的目标服务发送第一请求。
具体的,在本步骤中,客户端以报文的形式向云服务器发送第一请求,具体的,客户端所发送报文形式可以如下所示:
报文内容格式:json
报文样例:
{“networkType”:”wifi”,“opType”:”dianxin”,“version”:”2.0.0”}。
在本实施例中,在与云服务器连接的任意一个业务服务器的状态发生变化的情况下,向云服务器发送用于表征该业务服务器当前状态的信息。例如,在该业务服务器从正常变为故障的情况下,向云服务器发送用于表示该业务服务器故障的信息。在该业务服务器从故障变为正常的情况下,该业务服务器向云服务器发送用于表示该业务服务器正常的信息。
在本实施例中,第二预设条件包括:客户端启动、客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向云服务器发送第一请求的进程,或者,客户端检测到服务器的IP地址的状态存在更新。其中,客户端检测到业务服务器的IP地址的状态更新的方式包括:客户端通过比较APIRouter中预设响应头中的时间戳是否和缓存中的时间戳相同,若不同,则客户端检测到业务服务器的IP地址的状态存在更新,客户端向云服务器运行的目标服务发送第一请求。
S102、云服务器向客户端反馈IP列表。
在本步骤中,IP列表包括各个业务服务器的IP地址以及每个IP地址指示的服务器的状态。
在本步骤中,云服务器以报文的形式向客户端反馈IP列表,具体的,报文形式可以如下所示:
报文内容格式:json
报文样例:
为了避免向客户端反馈的报文被非法篡改,在本步骤中,使用HMAC算法对报文进行签名,签名信息在报文中以sign字段传输。当然,在实际中还可以采用其他算法对报文进行签名,本实施例不对具体的算法作限定。
S103、客户端从IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址。
具体的,在本步骤中,客户端从IP列表中各个IP地址指示的服务器的状态中,选取状态表示不存在故障(即正常)的一个服务器的IP地址为目标IP地址的方式可以包括以下步骤A1~步骤A3:
A1、向各个非故障服务器分别发送预设URL。
在本实施例中,非故障服务器为IP列表中状态表示不存在故障的服务器。并且,在本步骤中,向各个非故障服务器分别发送预设的URL,使得各个非故障服务器对所接收的URL进行响应。
A2、统计各个非故障服务器对预设URL响应耗时。
在本实施例中,在非故障服务器对预设URL响应完毕的情况下,向客户端反馈响应结果,客户端则可以得到各个非故障服务器反馈响应结果的时刻。针对每个非故障服务器反馈响应结果的时刻与发送预设URL的时刻,计算每个非故障服务器对预设URL的响应时长。对于每个非故障服务器对预设URL的响应时长的计算方式相同,本步骤以一个非故障服务器为例,介绍计算非故障服务器对预设URL的响应时长的计算过程。具体的,将向该非故障服务器发送预设URL的时刻与接收到该非故障服务器反馈的响应结果的时刻间的时长,作为该非故障服务器对预设URL的响应时长。
A3、将预设URL响应最快的非故障服务器的IP地址作为目标IP地址。
具体的,在本步骤中,将对预设URL的响应时长最短的非故障服务器的IP地址作为目标IP地址。
在实际中,还可以多次分别向各个非故障服务器发送预设URL,得到每次中各个非故障服务器对预设URL的响应时长,将各个非故障服务器在多次对预设URL的响应时长的平均值,作为确定目标IP地址的依据。具体的,以任意一个非故障服务器为例,假设5次分别向该非故障服务器发送预设URL,得到该非故障服务器5次分别对预设URL的响应时长,并将这5次分别对预设URL的响应时长的平均值作为该非故障服务器对预设URL的平均响应时长。进而,将各个非故障服务器中平均响应时长最短的非故障服务器的IP地址,作为目标IP地址。
S104、向目标IP地址指示的服务器发送目标交易请求。
在本步骤中,向目标IP地址指示的服务器发送的交易请求为http请求。为了使得所发送的http请求可以通过网关,在本实施例中,向目标IP地址指示的服务器发送的http请求的消息头中添加有该交易请求的域名,并且,http请求中包括目标IP地址。
在本步骤中,在第一预设条件的情况下,目标交易请求为客户端已发送的交易请求中发送时刻最晚的交易请求。在第二预设条件下,目标交易请求为客户端接收到交易请求的触发指令所触发的交易请求,例如,第二预设条件为客户端启动,则目标交易请求为客户端启动后,在接收到用户对交易请求的触发指令的情况下,客户端响应该触发指令所需发送的交易请求。
S105、客户端在满足第三预设条件的情况下,向DNS服务器发送目标交易请求。
第三预设条件可以包括:目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况。其中,第一预设异常情况和第二预设异常情况的具体内容本实施例不作限定,可以根据实际情况设定。
具体的,向DNS服务器发送目标交易请求,其中,该目标交易请求包括目标交易请求对应的域名,且不包括目标IP地址。即目标交易请求与现有技术中向DNS服务器发送的交易请求的形式相同。
DNS服务器对目标交易请求进行解析,得到预设IP地址,DNS服务器还将解析后的目标交易请求发送给预设IP地址指示的服务器,以便预设IP地址指示的服务器对解析后的目标交易请求进行响应。
在本实施例中,在第一预设条件、第二预设条件和第三预设条件都不满足的情况下,客户端在接收到用户触发的交易请求的情况下,客户端向最晚确定出的目标IP地址指示的服务器发送交易请求。
图2为本申请实施例提供的一种IP地址切换方法,应用于客户端,包括以下步骤:
S201、在满足第一预设条件或第二预设条件的情况下,向云服务器发送第一请求。
具体的,本步骤的具体实现,可以参考S101,这里不再赘述。
S202、接收IP列表。
具体的,本步骤中接收IP列表的方式,IP列表中的内容都可以参考S102,这里不再赘述。
S203、从IP列表中选取状态表示非故障服务器的一个IP地址为目标IP地址。
本步骤的具体实现方式可以参考S103,这里不再赘述。
S204、向目标IP地址指示的服务器发送目标交易请求。
本步骤的具体实现方式可以参考S104,这里不再赘述。
在实际中,客户端在满足第三预设条件的情况下,向DNS服务器发送目标交易请求。其中,第三预设条件的内容、目标交易请求的形式,以及DNS服务器响应目标交易请求的过程可以参考图1对应的实施例中关于此部分的内容,这里不再赘述。
在本实施例中,在第一预设条件、第二预设条件和第三预设条件都不满足的情况下,客户端在接收到用户触发的交易请求的情况下,客户端向最晚确定出的目标IP地址指示的服务器发送交易请求。
图3为本申请实施例提供的一种IP地址切换装置,包括:发送模块301、接收模块302和选取模块303。
其中,发送模块301,用于在满足第一预设条件的情况下,向云服务器发送第一请求,第一请求为用于获取各个服务器的状态和各个服务器的IP地址的请求,第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障,云服务器上运行有目标服务,目标服务用于获取每个服务器的状态,任意一个服务器的状态指示该服务器是否存在故障,各个服务器的IP地址不同。
接收模块302,用于接收IP列表,IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态。选取模块303,用于从IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,目标IP地址为响应目标交易请求的服务器的IP地址,在第一预设条件下,目标交易请求为发送时刻最晚的交易请求。
可选的,选取模块303,用于从IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
选取模块303,具体用于向各个非故障服务器分别发送预设URL,统计各个非故障服务器对预设URL响应耗时,得到各个非故障服务器对预设URL的响应速度,非故障服务器为IP列表中状态表示不存在故障的服务器。将对预设URL响应最快的非故障服务器的IP地址作为目标IP地址。
可选的,该装置还可以包括:第一执行模块304,用于在满足第二预设条件的情况下,向云服务器发送第一请求,第二预设条件包括:客户端启动、客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向云服务器发送第一请求的进程,或者,在客户端检测到服务器的状态存在更新。
可选的,该装置还包括第二执行模块305,用于在从IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,向目标IP地址指示的服务器发送HTTP请求,HTTP请求中包括目标IP地址,并且,HTTP请求的消息头中添加有目标交易请求的域名。
可选的,该装置还包括第三执行模块306,用于在满足第三预设条件的情况下,向DNS服务器发送目标交易请求,使得DNS服务器对目标交易请求中的域名解析为预设IP地址,并将解析后的目标交易请求发送给预设IP地址指示的服务器。
第三预设条件包括:目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况。
可选的,IP列表为签名后的IP列表。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种IP地址切换系统,其特征在于,包括:客户端、云服务器和IP地址互不相同的多个服务器;所述云服务器分别与每个所述服务器连接;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;
所述客户端,用于在满足第一预设条件的情况下,向所述云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;
所述云服务器,用于向所述客户端反馈IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
所述客户端,还用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址指示的服务器用于响应目标交易请求;在所述第一预设条件下所述目标交易请求为所述发送时刻最晚的交易请求。
2.根据权利要求1所述的系统,其特征在于,所述客户端用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
所述客户端,具体用于向各个非故障服务器分别发送预设URL,统计所述各个非故障服务器对所述预设URL的响应耗时,得到所述各个非故障服务器对所述预设URL的响应速度;将对所述预设URL响应最快的非故障服务器的IP地址为所述目标IP地址;所述非故障服务器为所述IP列表中状态表示不存在故障的服务器。
3.根据权利要求2所述的系统,其特征在于,所述客户端,还用于在满足第二预设条件的情况下,向所述云服务器发送所述第一请求;所述第二预设条件包括:所述客户端启动、所述客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向所述云服务器发送所述第一请求的进程,或者,所述客户端检测到所述服务器的IP地址的状态存在更新;在所述第二预设条件下所述目标交易请求为交易请求触发指令所触发的交易请求。
4.根据权利要求1~3任意一项所述的系统,其特征在于,所述客户端,还用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,向所述目标IP地址指示的服务器发送HTTP请求;所述HTTP请求中包括所述目标IP地址,并且,所述HTTP请求的消息头中添加有所述目标交易请求的域名。
5.根据权利要求4所述的系统,其特征在于,还包括:DNS服务器;
所述客户端,还用于在满足第三预设条件的情况下,向所述DNS服务器发送所述目标交易请求;所述第三预设条件包括:所述目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况;
所述DNS服务器,用于对所述目标交易请求中的域名解析为预设IP地址;
所述DNS服务器,还用于将解析后的目标交易请求发送给所述预设IP地址指示的服务器。
6.根据权利要求1所述的系统,其特征在于,所述云服务器,用于向所述客户端反馈IP列表,包括:
所述云服务器,具体用于对所述IP列表的内容进行签名,得到签名后的IP列表;向所述客户端发送所述签名后的IP列表。
7.一种IP地址切换方法,其特征在于,应用于客户端,包括:
在满足第一预设条件的情况下,向云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;所述各个服务器的IP地址不同;
接收IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址为响应目标交易请求的服务器的IP地址;在所述第一预设条件的情况下,所述目标交易请求为所述发送时刻最晚的交易请求。
8.根据权利要求7所述的方法,其特征在于,所述从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址,包括:
向各个非故障服务器分别发送预设URL,统计所述各个非故障服务器对所述预设URL响应耗时,得到所述各个非故障服务器对所述预设URL的响应速度;所述非故障服务器为所述IP列表中状态表示不存在故障的服务器;
将对所述预设URL响应最快的非故障服务器的IP地址作为所述目标IP地址。
9.根据权利要求8所述的方法,其特征在于,还包括:
在满足第二预设条件的情况下,向所述云服务器发送所述第一请求;所述第二预设条件包括:所述客户端启动、所述客户端的网络发生切换、在接收到交易请求的触发指令预设时长后缓存中不存在向所述云服务器发送所述第一请求的进程,或者,在所述客户端检测到所述服务器的状态存在更新;在所述第二预设条件下,所述目标交易请求为交易请求触发指令所触发的交易请求。
10.根据权利要求7~9任意一项所述的方法,其特征在于,在所述从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址之后,还包括:
向所述目标IP地址指示的服务器发送HTTP请求;所述HTTP请求中包括所述目标IP地址,并且,所述HTTP请求的消息头中添加有所述目标交易请求的域名。
11.根据权利要求10所述的方法,其特征在于,还包括:
在满足第三预设条件的情况下,向DNS服务器发送所述目标交易请求,使得所述DNS服务器对所述目标交易请求中的域名解析为预设IP地址,并将解析后的目标交易请求发送给所述预设IP地址指示的服务器;
所述第三预设条件包括:所述目标服务发生故障、获取IP列表过程发生第一预设异常情况,或者,从IP列表中选取目标IP地址的过程发生第二预设异常情况。
12.一种IP地址切换装置,其特征在于,应用于客户端,包括:
发送模块,用于在满足第一预设条件的情况下,向云服务器发送第一请求;所述第一请求为用于获取各个所述服务器的IP地址和各个所述服务器的状态的请求;所述第一预设条件包括:已发送的交易请求中发送时刻最晚的交易请求所请求的服务器发生故障;所述云服务器上运行有目标服务,所述目标服务用于获取每个所述服务器的状态;任意一个服务器的状态指示该服务器是否存在故障;所述各个服务器的IP地址不同;
接收模块,用于接收IP列表;所述IP列表包括各个所述服务器的IP地址以及每个所述IP地址指示的服务器的状态;
选取模块,用于从所述IP列表中选取状态表示不存在故障的服务器的IP地址为目标IP地址;所述目标IP地址为响应目标交易请求的服务器的IP地址;在所述第一预设条件下,所述目标交易请求为所述发送时刻最晚的交易请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910837012.2A CN110809064B (zh) | 2019-09-05 | 2019-09-05 | 一种ip地址切换方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910837012.2A CN110809064B (zh) | 2019-09-05 | 2019-09-05 | 一种ip地址切换方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110809064A true CN110809064A (zh) | 2020-02-18 |
CN110809064B CN110809064B (zh) | 2022-12-16 |
Family
ID=69487447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910837012.2A Active CN110809064B (zh) | 2019-09-05 | 2019-09-05 | 一种ip地址切换方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110809064B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787918A (zh) * | 2021-01-29 | 2021-05-11 | 杭州优云软件有限公司 | 一种基于服务路由树的数据中心寻址与主备切换方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957283A (zh) * | 2011-09-29 | 2014-07-30 | 北京奇虎科技有限公司 | 一种域名系统dns的最优应用服务器选取方法和装置 |
CN105743934A (zh) * | 2014-12-08 | 2016-07-06 | 网宿科技股份有限公司 | 一种http访问可用性的优化方法和移动智能终端 |
CN106888164A (zh) * | 2015-12-15 | 2017-06-23 | 阿里巴巴集团控股有限公司 | 一种异地多活下的业务数据路由方法及装置 |
CN107483260A (zh) * | 2017-08-28 | 2017-12-15 | 北京三快在线科技有限公司 | 故障处理方法及装置、电子设备 |
CN108206862A (zh) * | 2017-12-27 | 2018-06-26 | 努比亚技术有限公司 | 网络内容分的分发方法与分发装置 |
CN110177007A (zh) * | 2019-04-16 | 2019-08-27 | 平安科技(深圳)有限公司 | 实现网关异地多活的方法、装置、计算机设备及存储介质 |
-
2019
- 2019-09-05 CN CN201910837012.2A patent/CN110809064B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957283A (zh) * | 2011-09-29 | 2014-07-30 | 北京奇虎科技有限公司 | 一种域名系统dns的最优应用服务器选取方法和装置 |
CN105743934A (zh) * | 2014-12-08 | 2016-07-06 | 网宿科技股份有限公司 | 一种http访问可用性的优化方法和移动智能终端 |
CN106888164A (zh) * | 2015-12-15 | 2017-06-23 | 阿里巴巴集团控股有限公司 | 一种异地多活下的业务数据路由方法及装置 |
CN107483260A (zh) * | 2017-08-28 | 2017-12-15 | 北京三快在线科技有限公司 | 故障处理方法及装置、电子设备 |
CN108206862A (zh) * | 2017-12-27 | 2018-06-26 | 努比亚技术有限公司 | 网络内容分的分发方法与分发装置 |
CN110177007A (zh) * | 2019-04-16 | 2019-08-27 | 平安科技(深圳)有限公司 | 实现网关异地多活的方法、装置、计算机设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787918A (zh) * | 2021-01-29 | 2021-05-11 | 杭州优云软件有限公司 | 一种基于服务路由树的数据中心寻址与主备切换方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110809064B (zh) | 2022-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180026938A1 (en) | Detection and scheduling method, device, and node of content delivery network | |
CN106850710B (zh) | 一种数据云存储系统、客户终端、存储服务器及应用方法 | |
US10505977B2 (en) | Diffusing denial-of-service attacks by using virtual machines | |
US10795744B2 (en) | Identifying failed customer experience in distributed computer systems | |
CN107026758B (zh) | 用于cdn业务更新的信息处理方法、信息处理系统及服务器 | |
WO2014166265A1 (en) | Method, terminal, cache server and system for updating webpage data | |
CN107707631B (zh) | 数据获取方法及装置 | |
CN113039763A (zh) | 使用nf之间的直接信令的nf服务消费者重启检测 | |
US20140310372A1 (en) | Method, terminal, cache server and system for updating webpage data | |
CN107018159B (zh) | 业务请求处理方法及装置、和业务请求方法及装置 | |
EP2988498B1 (en) | Ott video quality monitoring method, apparatus, and system | |
US20070265976A1 (en) | License distribution in a packet data network | |
CN110809064B (zh) | 一种ip地址切换方法、装置及系统 | |
CN113992685B (zh) | 一种服务控制器确定方法、系统及装置 | |
US8996607B1 (en) | Identity-based casting of network addresses | |
CN109495602B (zh) | 一种网络接入异常的处理方法及装置 | |
CN111162952A (zh) | 一种设备容错方法及装置 | |
US7647401B1 (en) | System and method for managing resources of a network load balancer via use of a presence server | |
CN111224983A (zh) | 跨网段发现设备的方法及装置 | |
CN111736944A (zh) | 基于Kubernetes的Docker容器定位方法及装置 | |
CN107196817B (zh) | Ping线程监测方法、网络服务状态监测方法及客户端 | |
CN109962820B (zh) | 一种云平台的检测方法和检测平台 | |
CN106790168B (zh) | 一种通信预处理方法、客户端及服务端 | |
CN109104637B (zh) | 一种基于多监测平台的网络广告监测方法及系统 | |
CN113271326A (zh) | 网络协议地址调度方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |