CN109257229B - 一种主备切换方法及装置 - Google Patents

一种主备切换方法及装置 Download PDF

Info

Publication number
CN109257229B
CN109257229B CN201811250445.XA CN201811250445A CN109257229B CN 109257229 B CN109257229 B CN 109257229B CN 201811250445 A CN201811250445 A CN 201811250445A CN 109257229 B CN109257229 B CN 109257229B
Authority
CN
China
Prior art keywords
server
switching
domain name
name service
standby state
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.)
Expired - Fee Related
Application number
CN201811250445.XA
Other languages
English (en)
Other versions
CN109257229A (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201811250445.XA priority Critical patent/CN109257229B/zh
Publication of CN109257229A publication Critical patent/CN109257229A/zh
Application granted granted Critical
Publication of CN109257229B publication Critical patent/CN109257229B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种主备切换方法及装置。所述方法包括:服务器端接收应用端发送的域名服务切换请求,并根据所述域名服务切换请求,对目标对象进行主备状态切换并生成切换结果,以及向所述应用端发送所述切换结果。如此,当应用端收到域名服务切换请求时,能够通过与应用端连接的服务器端完成对目标对象进行主备状态的切换。相比于现有技术中人工进行主备状态切换的方式而言,本发明实施例提供的主备切换方法操作简单,减轻了运维人员的工作负担,减少了进行主备状态切换的耗时,同时可以提高主备状态切换的成功率;进一步地,可以避免维修人员下班后无法及时进行主备状态切换的问题,提高主备状态切换的及时性。

Description

一种主备切换方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种主备切换方法及装置。
背景技术
随着互联网技术的不断发展,人们已经时刻离不开网络。但由于提供网络服务的设备容易发生故障,一旦设备出现故障,会导致网络不能正常提供服务,若不能及时对故障进行处理的话,会给人们的生活造成很大不便,甚至会造成巨大的经济损失。现有技术中,通常会仅对各个设备进行备份,以备在某个设备出现故障时,可以及时执行主备切换方案,切换至备用设备。
现有的主备切换方案多数采用人工干预的方式实现,系统管理员确认设备故障并选择切换备用设备之后,通知运维人员登录机器或相关平台做具体的切换操作。然而,这种切换方案需要相关人员时刻保持可以上线操作的条件,在操作人员下班后容易出现不能及时执行主备切换的问题。
基于此,目前亟需一种主备切换方法,用于解决现有技术中人工进行主备状态切换的方式,一旦遇到操作人员下班后无法及时进行主备状态切换的问题。
发明内容
本发明实施例提供一种主备切换方法及装置,以解决现有技术中人工进行主备状态切换的方式,一旦遇到操作人员下班后无法及时进行主备状态切换的技术问题。
本发明实施例提供一种主备切换方法,所述方法包括:
服务器端接收应用端发送的域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果;
所述服务器端向所述应用端发送所述切换结果。
如此,当应用端收到域名服务切换请求时,能够通过与应用端连接的服务器端完成对目标对象进行主备状态的切换。相比于现有技术中人工进行主备状态切换的方式而言,本发明实施例提供的主备切换方法操作简单,减轻了运维人员的工作负担,减少了进行主备状态切换的耗时,同时可以提高主备状态切换的成功率;进一步地,可以避免维修人员下班后无法及时进行主备状态切换的问题,提高主备状态切换的及时性。
在一种可能的实现方式中,所述服务器端接收应用端发送的域名服务切换请求之前,所述方法还包括:
所述服务器端接收所述应用端发送的登录请求;
所述服务器端确定所述登录请求通过校验后,为所述登录请求生成令牌并向所述应用端发送所述令牌;
所述对所述目标对象进行主备状态切换之前,还包括:
所述服务器端确定所述域名服务切换请求中携带的令牌合法。
在一种可能的实现方式中,还包括:
所述服务器端接收所述应用端发送的域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述服务器端获取各对象的主备状态并发送给所述应用端。
在一种可能的实现方式中,所述目标对象为Nginx服务器;
所述对所述目标对象进行主备状态切换,包括:
对所述Nginx服务器进行主备状态切换;
所述目标对象为Web服务器;
所述对所述目标对象进行主备状态切换,包括:
对所述Web服务器进行主备状态切换;
所述目标对象为Web接口;
所述对所述目标对象进行主备状态切换,包括:
对所述Web接口进行主备状态切换。
在一种可能的实现方式中,所述应用端为微信小程序。
本发明实施例提供一种主备切换方法,所述方法包括:
应用端向服务器端发送域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
所述应用端接收所述服务器端发送的切换结果,所述切换结构是所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换后生成的。
在一种可能的实现方式中,所述应用端向服务器端发送域名服务切换请求之前,所述方法还包括:
所述应用端接收到用户发送的登录请求后,向所述服务器端发送所述登录请求;
所述应用端接收所述服务器端发送的令牌,所述令牌是所述服务器端在确定所述登录请求通过校验后,为所述登录请求生成的,所述令牌用于携带在所述域名服务切换请求中。
在一种可能的实现方式中,所述登录请求包括登录密码;
所述服务器端确定所述登录请求通过校验,包括:
所述服务器端确定所述登录请求ref符合应用端对应的域名格式,且确定所述登录密码通过消息摘要算法第五版MD5校验。
在一种可能的实现方式中,还包括:
所述应用端向所述服务器端发送域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述应用端接收所述服务器端发送的各对象的主备状态。
在一种可能的实现方式中,所述应用端向服务器端发送域名服务切换请求之前,所述方法还包括:
所述应用端接收用户发送的启动指令;
所述应用端探测并获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出所述服务器端。
在一种可能的实现方式中,所述应用端为微信小程序。
在一种可能的实现方式中,所述方法还包括:
所述微信小程序接收用户发送的刷新指令;
所述微信小程序探测并获取多个预设的服务器端的工作状态。
本发明实施例提供一种主备切换装置,所述装置为服务器端,所述装置包括:
接收单元,用于接收应用端发送的域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
处理单元,用于根据所述域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果;
发送单元,用于向所述应用端发送所述切换结果。
在一种可能的实现方式中,所述接收单元接收应用端发送的域名服务切换请求之前,还用于:
接收所述应用端发送的登录请求;
所述处理单元还用于:
确定所述登录请求通过校验后,为所述登录请求生成令牌并向所述应用端发送所述令牌;
所述处理单元对所述目标对象进行主备状态切换之前,还用于:
确定所述域名服务切换请求中携带的令牌合法。
在一种可能的实现方式中,所述接收单元还用于:
接收所述应用端发送的域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述处理单元还用于:
获取各对象的主备状态;
所述发送单元还用于:
将所述各对象的主备状态发送给所述应用端。
在一种可能的实现方式中,所述目标对象为Nginx服务器;
所述处理单元具体用于:
对所述Nginx服务器进行主备状态切换;
所述目标对象为Web服务器;
所述处理单元具体用于:
对所述Web服务器进行主备状态切换;
所述目标对象为Web接口;
所述对所述目标对象进行主备状态切换,包括:
对所述Web接口进行主备状态切换。
在一种可能的实现方式中,所述应用端为微信小程序。
本发明实施例提供一种主备切换装置,所述装置为应用端,所述装置包括:
发送单元,用于向服务器端发送域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
接收单元,用于接收所述服务器端发送的切换结果,所述切换结构是所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换后生成的。
在一种可能的实现方式中,所述发送单元向服务器端发送域名服务切换请求之前,还用于:
接收用户发送的登录请求;
所述发送单元还用于:
向所述服务器端发送所述登录请求;
所述接收单元还用于:
接收所述服务器端发送的令牌,所述令牌是所述服务器端在确定所述登录请求通过校验后,为所述登录请求生成的,所述令牌用于携带在所述域名服务切换请求中。
在一种可能的实现方式中,所述登录请求包括登录密码;
所述装置还包括:
处理单元,用于确定所述登录请求ref符合应用端对应的域名格式,且确定所述登录密码通过消息摘要算法第五版MD5校验。
在一种可能的实现方式中,所述发送单元还用于:
向所述服务器端发送域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述接收单元还用于:
接收所述服务器端发送的各对象的主备状态。
在一种可能的实现方式中,在所述发送单元向服务器端发送域名服务切换请求之前,所述接收单元还用于:
接收用户发送的启动指令;
所述装置还包括:
处理单元,用于探测并获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出所述服务器端。
在一种可能的实现方式中,所述接收单元还用于:
接收用户发送的刷新指令;
所述处理单元,还用于探测并获取多个预设的服务器端的工作状态。
本申请实施例的还提供一种装置,该装置具有实现上文所描述的主备切换方法的功能。该功能可以通过硬件执行相应的软件实现,在一种可能的设计中,该装置包括:处理器、收发器、存储器;该存储器用于存储计算机执行指令,该收发器用于实现该装置与其他通信实体进行通信,该处理器与该存储器通过该总线连接,当该装置运行时,该处理器执行该存储器存储的该计算机执行指令,以使该装置执行上文所描述的主备切换方法。
本发明实施例还提供一种计算机存储介质,所述存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时实现上述各种可能的实现方式中所描述的主备切换方法。
本发明实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各种可能的实现方式中所描述的主备切换方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本发明实施例提供的一种系统架构图;
图2为本发明实施例提供的一种主备切换方法所对应的流程示意图;
图3为本发明实施例提供的另一种主备切换方法的流程示意图;
图4为本发明实施例提供的一种服务器端的登录校验流程的示意图;
图5为本发明实施例提供的一种服务器端基于Token的域名服务切换请求校验流程的示意图;
图6为本发明实施例提供一种获取提供域名服务的各对象的主备状态的方法对应的流程示意图;
图7为本发明实施例中应用端的界面的示意图;
图8为本发明实施例提供的一种主备切换装置的结构示意图;
图9为本发明实施例提供的另一种主备切换装置的结构示意图。
具体实施方式
下面结合说明书附图对本申请进行具体说明,方法实施例中的具体操作方法也可以应用于装置实施例中。
图1示例性示出了本发明实施例提供的一种系统架构图。如图1所示,该系统100包括应用端110、至少一个服务器端(例如图1中示出的服务器端121、服务器端122、服务器端123)、以及与服务器端连接的域名解析系统130。其中,应用端110在探测到所述至少一个服务器端中任一服务器端可用后,可以与该可用的服务器端建立连接,比如,若应用端110探测到服务器端122可用后,可以与服务器端122建立连接,进而,域名解析系统130与服务器122建立连接。
本发明实施例中,域名解析系统可以用于解析不同的域名,比如,图1中示出的域名解析系统130可以用于解析域名A,也可以用于解析域名B。进一步地,域名解析系统130可以包括用于解析域名的域名解析服务器、负责流量分发的Nginx服务器、为用户提供Web服务的Web服务器、以及Web接口。
比如,图1中示出的域名解析系统130可以包括域名解析服务器1311、Nginx服务器1312、Nginx服务器1313、Web服务器1314、Web服务器1315、Web接口1316、Web接口1317。其中,当Nginx服务器1312处于主状态时,Nginx服务器1312与域名解析服务器1311连接,此时,若Web服务器1314处于主状态,则Web服务器1314与Nginx服务器1312连接,相应地,该Web服务器1314使用Web接口1316进行工作;若Web服务器1315处于主状态,则Web服务器1315与Nginx服务器1312连接,相应地,该Web服务器1315使用Web接口1317进行工作。当Nginx服务器1313处于主状态时,Nginx服务器1313与域名解析服务器1311连接,此时,若Web服务器1314处于主状态,则Web服务器1314与Nginx服务器1313连接,相应地,该Web服务器1314使用Web接口1316进行工作;若Web服务器1315处于主状态,则Web服务器1315与Nginx服务器1313连接,相应地,该Web服务器1315使用Web接口1317进行工作。
又比如,图1中示出的域名解析系统130还可以包括域名解析服务器1321、Nginx服务器1322、Nginx服务器1323、Web服务器1324、Web服务器1325、Web接口1326、Web接口1327。其中,当Nginx服务器1322处于主状态时,Nginx服务器1322与域名解析服务器1321连接,此时,若Web服务器1324处于主状态,则Web服务器1324与Nginx服务器1322连接,相应地,该Web服务器1324使用Web接口1326进行工作;若Web服务器1325处于主状态,则Web服务器1325与Nginx服务器1322连接,相应地,该Web服务器1325使用Web接口1327进行工作。当Nginx服务器1323处于主状态时,Nginx服务器1323与域名解析服务器1321连接,此时,若Web服务器1324处于主状态,则Web服务器1324与Nginx服务器1323连接,相应地,该Web服务器1324使用Web接口1326进行工作;若Web服务器1325处于主状态,则Web服务器1325与Nginx服务器1323连接,相应地,该Web服务器1325使用Web接口1327进行工作。
从图1所示的系统架构中可以看出,在域名解析系统中,存在主状态和备用状态之分,当系统管理员发现当前使用的设备出现故障时,需要对当前使用的设备的主备状态进行切换,即将当前使用的设备切换为备用状态。在这一过程中,如何提供一种高效的、便捷的主备切换方法是亟需解决的问题。
基于上述问题,图2示例性示出了本发明实施例提供的一种主备切换方法所对应的流程示意图。如图2所示,具体包括如下步骤:
步骤201,应用端向服务器端发送域名服务切换请求。
步骤202,服务器端接收应用端发送的域名服务切换请求。
步骤203,服务器端根据域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果。
步骤204,服务器端向应用端发送切换结果。
步骤205,应用端接收服务器端发送的切换结果。
采用上述步骤201至步骤205所描述的方法,当应用端收到域名服务切换请求时,能够通过与应用端连接的服务器端完成对目标对象进行主备状态的切换。相比于现有技术中人工进行主备状态切换的方式而言,本发明实施例提供的主备切换方法操作简单,减轻了运维人员的工作负担,减少了进行主备状态切换的耗时,同时可以提高主备状态切换的成功率;进一步地,可以避免维修人员下班后无法及时进行主备状态切换的问题,提高主备状态切换的及时性。
在执行上述步骤201之前,应用端可以先接收用户发送的启动指令,然后通过探测的方式(比如实时探测、周期性探测),获取多个预设的服务器端(如图1中示出的服务器端121、服务器端122、服务器端123)的工作状态,并根据每个预设的服务器端的工作状态,从多个预设的服务器端中确定出服务器端。进一步地,应用端在确定出服务器端之后,可以自动定向到该服务器端,即应用端可以建立与该服务器端的连接,从而可以获得该服务器端提高的服务。
采用这种方式,可以避免某个服务器端出现故障,进而导致整个主备切换系统无法使用的情况,提高了系统的可靠性。
本发明实施例中,应用端可以为多种类型,比如,应用端可以为微信小程序,或者也可以为其它类型的应用程序,具体不做限定。
进一步地,以应用端为微信小程序为例,用户发送启动指令的方式有多种,比如,用户可以通过扫码的方式启动微信小程序,或者也可以通过点击小程序名片的方式启动微信小程序,具体不做限定。
进一步地,应用端还可以接收用户发送的刷新指令。以应用端为微信小程序为例,微信小程序可以通过探测的方式(比如实时探测、周期性探测),获取多个预设的服务器端(如图1中示出的服务器端121、服务器端122、服务器端123)的工作状态。更进一步地,用户发送刷新指令的方式有多种,比如,用户可以点击刷新按钮,或者用户通过下拉窗口实现刷新,具体不做限定。
具体来说,步骤201和步骤202中,域名服务切换请求可以用于指示切换目标对象提供域名服务的主备状态。其中,目标对象可以为域名服务对应的各设备。以图1中示出的系统架构为例,目标对象可以为图1中示出的Nginx服务器1312(或Nginx服务器1313);或者,也可以为图1中示出的Web服务器1314(或Web服务器1315);或者,也可以为图1中示出的Web接口1316(或Web接口1317)。
需要说明的是,若目标对象为Web服务器,则在切换Web服务器的主备状态的同时,也要对相应地Web接口进行切换。
进一步地,目标对象域名服务的主备状态可以包括Nginx服务器的主备状态,也可以包括Web服务器的主备状态,还可以包括Web接口的主备状态。
更进一步地,根据目标对象的不同,域名服务切换请求也不同。举个例子,若目标对象为Nginx服务器,则域名服务切换请求可以为指示对Nginx服务器的主备状态进行切换;比如,若图1中示出的Nginx服务器1312当前的主备状态为主状态,Nginx服务器1313当前的主备状态为备用状态,则域名服务切换请求可以为指示切换Nginx服务器1312的主备状态为备用状态,Nginx服务器1313的主备状态为主状态。
再举个例子,若目标对象为Web服务器,则域名服务切换请求可以为指示对Web服务器的主备状态进行切换;比如,若图1中示出的Web服务器1314当前的主备状态为主状态,Web服务器1315当前的主备状态为备用状态,则域名服务切换请求可以为指示切换Web服务器1314的主备状态为备用状态,Web服务器1315的主备状态为主状态。
步骤203中,对于不同的域名服务切换请求,对目标对象进行主备状态切换的方式也不同。
一个示例中,若目标对象为Nginx服务器,即域名服务切换请求可以为指示对Nginx服务器的主备状态进行切换,则服务器端可以对Nginx服务器进行主备状态切换。
具体来说,域名服务切换请求可以包括切换方式,即从主状态切换到备用状态,或者从备用状态切换到主状态。举个例子,以图1示出的系统架构为例,若图1中示出的Nginx服务器1312当前的主备状态为主状态,Nginx服务器1313当前的主备状态为备用状态,则域名服务切换请求具体为指示切换Nginx服务器1312的主备状态为备用状态,Nginx服务器1313的主备状态为主状态。如此,服务器端(比如图1中示出的服务器端122)可以断开Nginx服务器的上级服务器(即图1中示出的域名解析服务器1311)与Nginx服务器1312之间的连接,并建立域名解析服务器1311与Nginx服务器1313之间的连接。
另一个示例中,若目标对象为Web服务器,即域名服务切换请求可以为指示对Web服务器的主备状态进行切换,则服务器端可以对Web服务器进行主备状态切换。
举个例子,以图1示出的系统架构为例,若图1中示出的Nginx服务器1312当前的主备状态为主状态,Web服务器1314当前的主备状态为主状态,Web服务器1315当前的主备状态为备用状态,则域名服务切换请求具体为指示切换Web服务器1314的主备状态为备用状态,Web服务器1315的主备状态为主状态。如此,服务器端(比如图1中示出的服务器端122)可以修改Web服务器当前的上级服务器(即图1中示出的Nginx服务器1312)的配置信息,即将Nginx服务器1312的配置信息Web服务器1314的主备状态修改为备用状态,Web服务器1315的主备状态修改为主状态。
进一步地,服务器端122还需要断开Web接口1316,并接通Web接口1317,以使Web服务器的主备状态与Web接口的主备状态保持一致。
步骤204和步骤205中,切换结果包括切换成功和切换失败。若切换成功,则服务器端可以封装切换成功的消息,并向应用端返回;若切换失败,则服务器端同样可以封装切换失败的消息,并向应用端返回。
进一步地,应用端可以通过多种方式向用户发送切换结果。以应用端为微信小程序为例,微信小程序可以通过微信企业号向相应的用户发送切换结果;或者,微信小程序也可以通过提供主备状态刷新或手动微信提示功能向相应的用户发送切换结果,具体不做限定。
更进一步地,切换结果中还可以包括允许目标对象进行切换原因或者其他内容,具体不做限定。
考虑到应用端可以面向网络中的所有用户,为了提高上述主备切换方法的安全性,避免受到不法分子的入侵,本发明实施例还提供一种主备切换方法,如图3所示,为本发明实施例提供的另一种主备切换方法的流程示意图,具体包括如下步骤:
步骤301,应用端接收到用户发送的登录请求后,向服务器端发送登录请求。
步骤302,服务器端接收应用端发送的登录请求。
步骤303,服务器端确定登录请求通过校验后,为所述登录请求生成令牌。
步骤304,服务器端向应用端发送令牌。
步骤305,应用端接收服务器端发送的令牌。
步骤306,应用端向服务器端发送域名服务切换请求,所述域名服务切换请求携带令牌。
步骤307,服务器端接收应用端发送的域名服务切换请求。
步骤308,服务器端确定域名服务切换请求中携带的令牌合法。
步骤309,服务器端根据域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果。
步骤310,服务器端向应用端发送切换结果。
步骤311,应用端接收服务器端发送的切换结果。
具体来说,步骤301和步骤302中,应用端可以面向用户,用户若需要使用应用端提供的主备切换服务,可以先进行登录,即用户向应用端发送登录请求,以使应用端在接收到用户发送的登录请求后,向服务器端转发该登录请求。
本发明实施例中,登录请求可以包括登录名和登录密码,服务器端在接收到登录请求后,可以对登录名和登录密码进行校验,若校验通过,则可以向应用端返回登录成功的响应消息,从而使得用户可以根据该响应消息执行后续操作。
进一步地,服务器端对登录名和登录密码进行校验的方式可以有多种,比如,可以校验请求ref是否符合应用端对应的域名格式,或者也可以对账户密码进行消息摘要算法第五版(Message Digest Algorithm,MD5)校验,或者也可以同时进行上述两种校验,具体不做限定。
进一步地,在步骤303至步骤305中,若服务器端确定登录请求通过校验后,可以为该登录请求生成令牌(Token),并将该Token返回给应用端,进而用户通过应用端收到该Token)如此,在后续的流程中,应用端发送的每一次请求(或用户发送的每一次请求)中都可以携带该Token,从而便于服务器端对请求进行基于该Token的认证,提高应用端与服务器端交互的安全性。
比如,本发明实施例中,在上述步骤306中,应用端向服务器端发送域名服务切换请求中就可以携带上文所述的Token。进一步地,在上述步骤307和步骤308中,服务器端在接收到携带有Token的域名服务切换请求后,可以判断域名服务切换请求中携带的令牌是否合法,若合法,则可以执行后续步骤;若不合法,则可以拒绝该域名服务切换请求。
需要说明的是,在执行步骤309之前,服务器端可以进一步校验发起该域名服务切换请求的用户是否处于黑名单中,若未处于黑名单,则可以执行后续步骤;否则,可以拒绝该域名服务切换请求。
步骤309至步骤311所描述的内容与上文中步骤203至步骤205所描述的内容类似,此处不再详细赘述。
基于上文图2和图3所描述的内容,下面对图2和图3中涉及到的服务器端的登录校验流程、服务器端基于Token的域名服务切换请求校验流程进行详细说明。
如图4所示,为本发明实施例提供的一种服务器端的登录校验流程的示意图,具体包括如下步骤:
步骤401,服务器端接收登录请求。
步骤402,服务器端判断登录请求的ref是否符合应用端对应的域名格式,若符合,则执行步骤403;否则,执行步骤404。
步骤403,服务器端判断登录密码是否通过MD5校验,若通过,则执行步骤405;否则,执行步骤406。
步骤404,服务器端拒绝登录请求。
步骤405,服务器端返回登录及Token。
步骤406,服务器端返回登录失败。
如图5所示,为本发明实施例提供的一种服务器端基于Token的域名服务切换请求校验流程的示意图,具体包括如下步骤:
步骤501,服务器端接收域名服务切换请求。
步骤502,服务器端校验请求ref是否符合应用端对应的域名格式,若符合,则执行步骤503;否则,执行步骤504。
步骤503,服务器端校验Token是否合法,若合法,则执行步骤505;否则,执行步骤504。
步骤504,服务器端拒绝执行域名服务切换请求。
步骤505,服务器端校验发起该域名服务切换请求的用户是否处于黑名单,若不处于,则执行步骤506;否则,执行步骤504。
步骤506,服务器端允许执行域名服务切换请求。
考虑到用户在应用端上登录之后,有查看提供域名服务的各对象的主备状态的需求,基于此,如图6所示,为本发明实施例提供一种获取提供域名服务的各对象的主备状态的方法对应的流程示意图,具体包括如下步骤:
步骤601,应用端向服务器端发送域名服务状态请求。
步骤602,服务器端接收应用端发送的域名服务状态请求。
步骤603,服务器端获取各对象的主备状态。
步骤604,服务器端将各对象的主备状态发送给应用端。
步骤605,应用端接收服务器端发送的各对象的主备状态。
具体来说,步骤601和步骤602中,域名服务状态请求可以用于获取提供域名服务的各对象的主备状态。其中,各对象的主备状态可以是指域名解析系统中各对象的主备状态,以图1中示出的系统架构为例,各对象的主备状态可以包括图1中示出的Nginx服务器1312的主备状态、Nginx服务器1313的主备状态、Web服务器1314的主备状态、Web服务器1315的主备状态、Web接口1316的主备状态、Web接口1317的主备状态。
如图7所示,为本发明实施例中应用端的界面的示意图。其中,应用端的界面可以包括不同的域名对应的域名解析系统,比如图7中示出的域名A和域名B;其中,域名A对应的界面中包括Nginx服务器(即图7中示出的Nginx服务器1和Nginx服务器2)、Web服务器(即图7中示出的Web服务器1和Web服务器2)、Web接口(即图7中示出的Web接口1和Web接口2)。
步骤603中,根据对象的不同,服务器获取该对象的主备状态的方式也不同。比如,对象为Nginx服务器时,可以从Nginx服务器的上一级服务器中获取Nginx的主备状态;又比如,对象为Web服务器时,可以从Nginx服务器的配置信息中获取Web服务器的主备状态。
步骤604和步骤605中,服务器端可以将各对象的主备状态发送给应用端,以使应用端可以以图7中示出的界面形式将各对象的主备状态显示出来。
具体来说,应用端显示各对象的主备状态的方式有多种,比如,应用端可以修改主备状态为主状态对应的对象的背景色来进行区分;或者,应用端也可以直接在各对象对应的标签上显示该对象的主备状态,本领域技术人员也可以根据经验和实际情况来确定应用端显示各对象的主备状态的方式,具体不做限定。
基于同样的发明思路,如图8所示,为本发明实施例提供的一种主备切换装置的结构示意图,所述装置为服务器端,所述装置包括接收单元801、处理单元802,发送单元803;其中,
接收单元801,用于接收应用端发送的域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
处理单元802,用于根据所述域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果;
发送单元803,用于向所述应用端发送所述切换结果。
在一种可能的实现方式中,所述接收单元801接收应用端发送的域名服务切换请求之前,还用于:
接收所述应用端发送的登录请求;
所述处理单元802还用于:
确定所述登录请求通过校验后,为所述登录请求生成令牌并向所述应用端发送所述令牌;
所述处理单元802对所述目标对象进行主备状态切换之前,还用于:
确定所述域名服务切换请求中携带的令牌合法。
在一种可能的实现方式中,所述接收单元801还用于:
接收所述应用端发送的域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述处理单元802还用于:
获取各对象的主备状态;
所述发送单元803还用于:
将所述各对象的主备状态发送给所述应用端。
在一种可能的实现方式中,所述目标对象为Nginx服务器;
所述处理单元802具体用于:
对所述Nginx服务器进行主备状态切换;
所述目标对象为Web服务器;
所述处理单元802具体用于:
对所述Web服务器进行主备状态切换;
所述目标对象为Web接口;
所述对所述目标对象进行主备状态切换,包括:
对所述Web接口进行主备状态切换。
在一种可能的实现方式中,所述应用端为微信小程序。
基于同样的发明思路,如图9所示,为本发明实施例提供的另一种主备切换装置的结构示意图,所述装置为应用端,所述装置包括发送单元901、接收单元902,处理单元903;其中,:
发送单元901,用于向服务器端发送域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
接收单元902,用于接收所述服务器端发送的切换结果,所述切换结构是所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换后生成的。
在一种可能的实现方式中,所述发送单元901向服务器端发送域名服务切换请求之前,还用于:
接收用户发送的登录请求;
所述发送单元901还用于:
向所述服务器端发送所述登录请求;
所述接收单元902还用于:
接收所述服务器端发送的令牌,所述令牌是所述服务器端在确定所述登录请求通过校验后,为所述登录请求生成的,所述令牌用于携带在所述域名服务切换请求中。
在一种可能的实现方式中,所述登录请求包括登录密码;
所述装置还包括:
处理单元903,用于确定所述登录请求ref符合应用端对应的域名格式,且确定所述登录密码通过消息摘要算法第五版MD5校验。
在一种可能的实现方式中,所述发送单元901还用于:
向所述服务器端发送域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述接收单元902还用于:
接收所述服务器端发送的各对象的主备状态。
在一种可能的实现方式中,在所述发送单元向服务器端发送域名服务切换请求之前,所述接收单元902还用于:
接收用户发送的启动指令;
所述装置还包括:
处理单元903,用于探测并获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出所述服务器端。
在一种可能的实现方式中,所述接收单元902还用于:
接收用户发送的刷新指令;
所述处理单元903,还用于探测并获取多个预设的服务器端的工作状态。
本申请实施例的还提供一种装置,该装置具有实现上文所描述的主备切换方法的功能。该功能可以通过硬件执行相应的软件实现,在一种可能的设计中,该装置包括:处理器、收发器、存储器;该存储器用于存储计算机执行指令,该收发器用于实现该装置与其他通信实体进行通信,该处理器与该存储器通过该总线连接,当该装置运行时,该处理器执行该存储器存储的该计算机执行指令,以使该装置执行上文所描述的主备切换方法。
本发明实施例还提供一种计算机存储介质,所述存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时实现上述各种可能的实现方式中所描述的主备切换方法。
本发明实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各种可能的实现方式中所描述的主备切换方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (13)

1.一种主备切换方法,其特征在于,所述方法包括:
服务器端接收应用端发送的域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果;
所述服务器端向所述应用端发送所述切换结果;
其中,所述服务器端是所述应用端在接收用户的启动指令后,通过探测的方式获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出的。
2.根据权利要求1所述的方法,其特征在于,所述服务器端接收应用端发送的域名服务切换请求之前,所述方法还包括:
所述服务器端接收所述应用端发送的登录请求;
所述服务器端确定所述登录请求通过校验后,为所述登录请求生成令牌并向所述应用端发送所述令牌;
所述对所述目标对象进行主备状态切换之前,还包括:
所述服务器端确定所述域名服务切换请求中携带的令牌合法。
3.根据权利要求1所述的方法,其特征在于,还包括:
所述服务器端接收所述应用端发送的域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述服务器端获取各对象的主备状态并发送给所述应用端。
4.根据权利要求1所述的方法,其特征在于,所述目标对象为Nginx服务器;
所述对所述目标对象进行主备状态切换,包括:
对所述Nginx服务器进行主备状态切换;
所述目标对象为Web服务器;
所述对所述目标对象进行主备状态切换,包括:
对所述Web服务器进行主备状态切换;
所述目标对象为Web接口;
所述对所述目标对象进行主备状态切换,包括:
对所述Web接口进行主备状态切换。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述应用端为微信小程序。
6.一种主备切换方法,其特征在于,所述方法包括:
应用端向服务器端发送域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
所述应用端接收所述服务器端发送的切换结果,所述切换结果 是所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换后生成的;
所述应用端向服务器端发送域名服务切换请求之前,所述方法还包括:
所述应用端接收用户发送的启动指令;
所述应用端探测并获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出所述服务器端。
7.根据权利要求6所述的方法,其特征在于,所述应用端向服务器端发送域名服务切换请求之前,所述方法还包括:
所述应用端接收到用户发送的登录请求后,向所述服务器端发送所述登录请求;
所述应用端接收所述服务器端发送的令牌,所述令牌是所述服务器端在确定所述登录请求通过校验后,为所述登录请求生成的,所述令牌用于携带在所述域名服务切换请求中。
8.根据权利要求7所述的方法,其特征在于,所述登录请求包括登录密码;
所述服务器端确定所述登录请求通过校验,包括:
所述服务器端确定所述登录请求ref符合应用端对应的域名格式,且确定所述登录密码通过消息摘要算法第五版MD5校验。
9.根据权利要求6所述的方法,其特征在于,还包括:
所述应用端向所述服务器端发送域名服务状态请求;所述域名服务状态请求用于获取提供域名服务的各对象的主备状态;
所述应用端接收所述服务器端发送的各对象的主备状态。
10.根据权利要求6至9任一项所述的方法,其特征在于,所述应用端为微信小程序。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
所述微信小程序接收用户发送的刷新指令;
所述微信小程序探测并获取多个预设的服务器端的工作状态。
12.一种主备切换装置,其特征在于,所述装置为服务器端,所述装置包括:
接收单元,用于接收应用端发送的域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
处理单元,用于根据所述域名服务切换请求,对所述目标对象进行主备状态切换并生成切换结果;
发送单元,用于向所述应用端发送所述切换结果;
其中,所述服务器端是所述应用端在接收用户的启动指令后,通过探测的方式获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出的。
13.一种主备切换装置,其特征在于,所述装置为应用端,所述装置包括:
发送单元,用于向服务器端发送域名服务切换请求,所述域名服务切换请求用于指示切换目标对象提供域名服务的主备状态;
接收单元,用于接收所述服务器端发送的切换结果,所述切换结果 是所述服务器端根据所述域名服务切换请求,对所述目标对象进行主备状态切换后生成的;
在所述发送单元向服务器端发送域名服务切换请求之前,所述接收单元还用于:
接收用户发送的启动指令;
所述装置还包括:
处理单元,用于探测并获取多个预设的服务器端的工作状态,并根据每个预设的服务器端的工作状态,从所述多个预设的服务器端中确定出所述服务器端。
CN201811250445.XA 2018-10-25 2018-10-25 一种主备切换方法及装置 Expired - Fee Related CN109257229B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811250445.XA CN109257229B (zh) 2018-10-25 2018-10-25 一种主备切换方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811250445.XA CN109257229B (zh) 2018-10-25 2018-10-25 一种主备切换方法及装置

Publications (2)

Publication Number Publication Date
CN109257229A CN109257229A (zh) 2019-01-22
CN109257229B true CN109257229B (zh) 2021-08-06

Family

ID=65046676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811250445.XA Expired - Fee Related CN109257229B (zh) 2018-10-25 2018-10-25 一种主备切换方法及装置

Country Status (1)

Country Link
CN (1) CN109257229B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166524B (zh) * 2019-04-12 2023-04-07 未鲲(上海)科技服务有限公司 数据中心的切换方法、装置、设备及存储介质
CN113407383B (zh) * 2021-06-30 2024-02-09 迈普通信技术股份有限公司 主备系统切换方法、装置、服务器及主备系统
CN115134220B (zh) * 2022-06-29 2023-11-10 北京飞讯数码科技有限公司 主备服务器切换方法及装置、计算设备和存储介质
CN115426250B (zh) * 2022-08-26 2023-11-10 中国人民解放军63660部队 一种用于靶场指控的双机热备切换方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611571A (zh) * 2012-02-13 2012-07-25 华为技术有限公司 端口控制协议快速恢复方法和装置
CN102739453A (zh) * 2012-07-03 2012-10-17 华为软件技术有限公司 主备切换方法、设备及系统
CN103188098A (zh) * 2011-12-30 2013-07-03 中国移动通信集团河南有限公司 一种容灾切换方法、系统以及装置
CN204272157U (zh) * 2014-12-29 2015-04-15 同方威视技术股份有限公司 切换系统
CN104660550A (zh) * 2013-11-20 2015-05-27 北京邮电大学 一种在多服务器之间进行会话迁移的方法
CN105337762A (zh) * 2015-09-28 2016-02-17 浪潮(北京)电子信息产业有限公司 一种支持自动故障切换的文件共享方法
CN107769943A (zh) * 2016-08-17 2018-03-06 阿里巴巴集团控股有限公司 一种主备集群切换的方法和设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409451B1 (en) * 2003-05-30 2008-08-05 Aol Llc, A Delaware Limited Liability Company Switching between connectivity types to maintain connectivity

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188098A (zh) * 2011-12-30 2013-07-03 中国移动通信集团河南有限公司 一种容灾切换方法、系统以及装置
CN102611571A (zh) * 2012-02-13 2012-07-25 华为技术有限公司 端口控制协议快速恢复方法和装置
CN102739453A (zh) * 2012-07-03 2012-10-17 华为软件技术有限公司 主备切换方法、设备及系统
CN104660550A (zh) * 2013-11-20 2015-05-27 北京邮电大学 一种在多服务器之间进行会话迁移的方法
CN204272157U (zh) * 2014-12-29 2015-04-15 同方威视技术股份有限公司 切换系统
CN105337762A (zh) * 2015-09-28 2016-02-17 浪潮(北京)电子信息产业有限公司 一种支持自动故障切换的文件共享方法
CN107769943A (zh) * 2016-08-17 2018-03-06 阿里巴巴集团控股有限公司 一种主备集群切换的方法和设备

Also Published As

Publication number Publication date
CN109257229A (zh) 2019-01-22

Similar Documents

Publication Publication Date Title
CN109257229B (zh) 一种主备切换方法及装置
CN113489691B (zh) 网络访问方法、装置、计算机可读介质及电子设备
US20110016516A1 (en) Management of an instant message session
CN106790092B (zh) 远程过程调用服务端控制系统及方法
CN110221949B (zh) 自动化运维管理方法、装置、设备及可读存储介质
CN108259618B (zh) 一种同步的数据交互处理方法及装置
CN113407383B (zh) 主备系统切换方法、装置、服务器及主备系统
CN110599659A (zh) 一种门禁权限同步方法及装置
CN111552942B (zh) 身份认证方法、系统、装置及计算机存储介质
CN113206877A (zh) 一种会话保持方法及装置
CN114363334B (zh) 云系统及云桌面虚拟机的网络配置方法、装置及设备
CN115277457A (zh) 服务器的控制方法、服务器及存储介质
CN107025129B (zh) 一种数据处理方法以及装置
CN112365267B (zh) 一种基于操作行为的反爬虫方法及装置
CN111885080B (zh) 一种登录服务架构、服务器及客户端
CN107147651B (zh) 一种灰度发布系统及其发布方法
CN112269637A (zh) 虚拟机数据迁移方法和装置
CN107729207A (zh) 一种应用程序主线程的监控方法及装置
CN107707398B (zh) 云计算系统中管理物理主机的方法和装置
CN109219105B (zh) 路由切换方法以及路由切换系统
CN111988202B (zh) 节点切换方法、装置及存储介质
CN111858079B (zh) 分布式锁迁移方法、装置及电子设备、存储介质
CN114356810A (zh) 一种主机与存储系统的通信连接方法、装置、设备及介质
CN112148348B (zh) 任务处理方法、装置及存储介质
CN112994974A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210806