CN110913025B - 服务调用方法、装置、设备及介质 - Google Patents

服务调用方法、装置、设备及介质 Download PDF

Info

Publication number
CN110913025B
CN110913025B CN201911413857.5A CN201911413857A CN110913025B CN 110913025 B CN110913025 B CN 110913025B CN 201911413857 A CN201911413857 A CN 201911413857A CN 110913025 B CN110913025 B CN 110913025B
Authority
CN
China
Prior art keywords
data center
service
identifier
identification
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.)
Active
Application number
CN201911413857.5A
Other languages
English (en)
Other versions
CN110913025A (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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201911413857.5A priority Critical patent/CN110913025B/zh
Publication of CN110913025A publication Critical patent/CN110913025A/zh
Priority to EP20909561.1A priority patent/EP3968607B1/en
Priority to US17/619,745 priority patent/US11677815B2/en
Priority to PCT/CN2020/117617 priority patent/WO2021135448A1/zh
Application granted granted Critical
Publication of CN110913025B publication Critical patent/CN110913025B/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/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • 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/1021Server selection for load balancing based on client or server locations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种服务调用方法、装置、设备及介质。其中,服务调用方法包括:接收服务调用端发送的第一服务请求报文;响应于第一服务请求报文,确定第一服务请求报文的报文头信息;在报文头信息中存在路由标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心;向目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务。根据本发明实施例,能够提高服务调用的效率。

Description

服务调用方法、装置、设备及介质
技术领域
本发明属于通信技术领域,尤其涉及一种服务调用方法、装置、设备及介质。
背景技术
在分布式服务系统存在多个数据中心的情况下,当分布式服务系统接收到服务调用端发送的服务请求报文时,首先需要对接收到的服务请求报文进行分流处理,然后按照分流结果,将服务请求报文发送至相应的数据中心,以使该数据中心为服务调用端提供相应服务。
已有的报文分流方法,一般通过分布式服务系统的应用程序接口(ApplicationProgramming Interface,API)网关服务器实现。但是,使用这种方法的过程中,需要将服务请求报文在多个数据中心之间进行跨广域网转发,使得服务调用的效率较低。
发明内容
本发明实施例提供一种服务调用方法、装置、设备及介质,能够提高服务调用的效率。
第一方面,本发明实施例提供一种服务调用方法,包括:
接收服务调用端发送的第一服务请求报文;
响应于第一服务请求报文,确定第一服务请求报文的报文头信息;
在报文头信息中存在路由标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心;
向目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务。
第二方面,本发明实施例提供了一种服务调用方法,包括:
获取第一服务请求报文;其中,第一服务请求报文的报文头信息中不存在路由标识;
在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心;
根据目标数据中心对应的数据中心标识,生成服务调用端对应的路由标识;
向服务调用端发送路由标识。
第三方面,本发明实施例提供了一种服务调用装置,包括:
第一报文接收模块,用于接收服务调用端发送的第一服务请求报文;
第一报文处理模块,用于响应于第一服务请求报文,确定第一服务请求报文的报文头信息;
第一中心确定模块,用于在报文头信息中存在路由标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心;
请求报文发送模块,用于向目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务。
第四方面,本发明实施例提供了一种服务调用装置,包括:
第二报文接收模块,用于获取第一服务请求报文;其中,第一服务请求报文的报文头信息中不存在路由标识;
第二中心确定模块,用于在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心;
路由标识生成模块,用于根据目标数据中心对应的数据中心标识,生成服务调用端对应的路由标识;
路由标识发送模块,用于向服务调用端发送路由标识。
第五方面,本发明实施例提供了一种服务调用设备,设备包括:处理器以及存储有计算机程序指令的存储器;
处理器执行计算机程序指令时实现如第一方面或第二方面所述的服务调用方法。
第六方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如第一方面或第二方面所述的服务调用方法。
本发明实施例的服务调用方法、装置、设备及介质,能够在接收到服务调用端发送的第一服务请求报文的情况下,基于第一服务请求报文的报文头信息中的路由标识,在多个数据中心中,确定服务调用端对应的目标数据中心,并向所确定的目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务,从而能够利用路由标识,快速、高效地实现对第一服务请求报文的分流处理,提高服务调用的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的分布式服务系统的系统架构图;
图2是本发明一个实施例提供的服务调用方法的流程示意图;
图3是本发明另一个实施例提供的服务调用方法的流程示意图;
图4是本发明一个实施例提供的服务调用装置的结构示意图;
图5是本发明另一个实施例提供的服务调用装置的结构示意图;
图6是本发明一个实施例提供的服务调用设备的硬件结构示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在分布式服务系统存在多个数据中心的情况下,当分布式服务系统接收到服务调用端发送的服务请求报文时,首先需要对接收到的服务请求报文进行分流处理,然后按照分流结果,将服务请求报文发送至相应的数据中心,以使该数据中心为服务调用端提供相应服务。
在已有的分布式服务系统中,一般通过分布式服务系统的API网关服务器实现对服务请求报文的分流处理。但是,在对服务请求报文进行分流处理的过程中,需要将服务请求报文在多个数据中心之间进行跨广域网转发,使得服务调用的效率较低。此外,API网关服务器的分流策略与转发功能耦合,使得配置分流策略也不够灵活。并且,API网关服务器需要承载所有的服务调用流量,对API网关服务器性能的要求也较大。
为了解决现有技术问题,本发明实施例提出了一种分布式服务系统,并且基于该分布式服务系统提出了一种服务调用方法、装置、设备及介质,能够在用于调用服务的服务请求报文的报文头信息中增加路由标识字段,使报文头信息携带有用于判断该服务请求报文对应的数据中心的路由标识,因此,当内容分发网络(Content Delivery Network,CDN)或者应用系统服务器等执行分流或回源的报文分发设备接收到服务请求报文时,可以直接基于该路由标识将其分发至路由标识对应的数据中心,从而实现服务请求报文的路由功能。
图1示出了本发明一个实施例提供的分布式服务系统的系统架构图。如图1所示,该分布式服务系统包括一个CDN 110和多个数据中心120,每个数据中心120具有一个负载均衡设备121、一个分流规则服务器122和多个应用服务器123,其中,CDN 110可以与每个数据中心120的负载均衡设备121通信连接,每个负载均衡设备121可以与其所属的数据中心120中的多个应用服务器123和分流规则服务器122通信连接。
在本发明实施例中,发送服务请求报文的服务调用端130可以为服务器也可以为电子设备。CDN 110可以由多个内容分发服务器构成。
在本发明实施例中,上述的各种服务器均可以是一种高性能的电子计算器,用于存储和处理数据;电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
具体地,CDN 110的每个内容分发服务器分别用于在接收到服务调用端130发送的服务请求报文后,利用所接收的服务请求报文的报文头信息中所携带的路由标识,在多个数据中心120中,确定该服务请求报文对应的目标数据中心,并将该服务请求报文发送至目标数据中心,从而快速地完成对服务请求报文的分流。数据中心120的负载均衡设备121用于在接收到服务请求报文后,在多个应用服务器123中,确定为该服务调用端130提供服务的应用服务器123,并将服务请求报文发送至所确定的应用服务器123。数据中心120的应用服务器123用于为服务调用端130提供服务。数据中心120的分流规则服务器122用于响应于接收到报文头信息中未携带的路由标识的服务请求报文,为发送该服务请求报文的服务调用端分配目标数据中心,并生成该服务调用端对应的路由标识。
下面首先对本发明实施例所提供的服务调用方法进行介绍。
图2示出了本发明一个实施例提供的服务调用方法的流程示意图。
在本发明一些实施例中,图2所示的服务调用方法可以由报文分发设备执行,例如,图1所示的CDN 110的任一个内容分发服务器或者应用系统服务器。如图2所示,该服务调用方法可以包括:
S210、接收服务调用端发送的第一服务请求报文;
S220、响应于第一服务请求报文,确定第一服务请求报文的报文头信息;
S230、在报文头信息中存在路由标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心;
S240、向目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务。
在本发明实施例中,能够在接收到服务调用端发送的第一服务请求报文的情况下,基于第一服务请求报文的报文头信息中的路由标识,在多个数据中心中,确定服务调用端对应的目标数据中心,并向所确定的目标数据中心发送第一服务请求报文,以使目标数据中心为服务调用端提供服务,从而能够利用路由标识,快速、高效地实现对第一服务请求报文的分流处理,提高服务调用的效率。
在本发明一些实施例的S210中,所述的服务调用端可以为图1所示的服务调用端130,当服务调用端130需要通过分布式服务系统调用服务时,会向图1所示的CDN 110发送第一服务请求报文,在CDN 110的内容分发服务器接收到服务调用端130所发送的第一服务请求报文后,该内容分发服务器可以对第一服务请求报文进行路由,将其分发至相应的数据中心。
在本发明一些实施例的S220中,可以对第一服务请求报文进行报文解析,获得第一服务请求报文的请求报文头,然后对请求报文头进行解析,获得请求报文头中的报文头信息,报文头信息可以包括请求报文头中的各个字段的字段名和字段值,具体地,在请求报文头的字段为路由标识字段的情况下,路由标识即为该字段的字段值。
以报文头信息中的路由标识字段表示为dcTag字段为例,dcTag为字段的键,如果路由标识为ABCX,ABCX为字段的值,则A表示第一回源数据中心标识,B表示第二回源数据中心标识,C表示第三回源数据中心标识,X是保留位。
在本发明一些实施例的S230之前,还需要根据报文头信息,判断报文头信息中是否存在路由标识字段,以及判断路由标识字段中是否存在路由标识,然后根据判断结果,对第一服务请求报文执行不同的分流策略。
在本发明一些实施例的S230中,在判断报文头信息中存在路由标识字段及路由标识的情况下,可以确定第一服务请求报文不是服务调用端发送的首次报文,则可以直接根据路由标识确定目标数据中心。其中,服务调用端发送的首次报文指的是服务调用端启动时或者启动应用程序时所发送的报文。
在一些实施例中,在路由标识仅包括一个数据中心标识的情况下,可以直接将该数据中心标识对应的数据中心,作为目标数据中心。
在另一些实施例中,在路由标识包括多个数据中心标识的情况下,可以直接在多个数据中心标识中根据预定选择规则或者随机选择一个数据中心标识对应的数据中心,作为目标数据中心。
但是,在实际应用过程中,报文分发设备所接收到的服务请求报文可能是攻击报文或者非法报文,在这些报文的报文头信息中可能也携带有路由标识,但是路由标识中可能存着无法被报文分发设备所识别的数据中心标识,因此,在本发明另一些实施例S230中,在判断报文头信息中存在路由标识字段及路由标识的情况下,可以首先验证路由标识的合法性,即判断路由标识是否为合法标识,只有路由标识为合法标识,才会根据路由标识确定目标数据中心。
在这些实施例中,可选地,S230的具体方法可以包括:
获取预设数据中心标识;
根据预设数据中心标识,确定路由标识是否为合法标识;
在确定路由标识为合法标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心。
在本发明实施例中,报文分发设备可以接收并存储每个数据中心对应的预设数据中心标识。因此,报文分发设备可以根据所存储的预设数据中心标识,对路由标识是否为合法标识进行判断,在确定路由标识为合法标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心。
在本发明一些实施例中,可以仅根据预设数据中心标识判断路由标识是否为合法标识,即如果预设数据中心标识中存在与预设数据中心标识不匹配的第一数据中心标识,则判断其不是合法标识,如果预设数据中心标识中不存在与预设数据中心标识不匹配的第一数据中心标识,则判断其为合法标识。
因此,可以简单、快速地对路由标识的合法性进行判断,直接停止响应或者缺省响应该第一服务请求报文。其中,缺省响应指的是,在判断路由标识不是合法标识的情况下,将其分配至缺省数据中心,使缺省数据中心提供第一服务请求报文对应的服务,从而可以避免错误地将兼容平台所发送的第一服务请求报文屏蔽。
在本发明另一些实施例中,为了进一步避免错误地将兼容平台所发送的第一服务请求报文屏蔽,还可以根据预设数据中心标识和每个数据中心的运行状态,综合判断路由标识是否为合法标识。
在这些实施例中,可选地,根据预设数据中心标识确定路由标识是否为合法标识的具体方法可以包括:
确定路由标识中是否存在第一数据中心标识;其中,第一数据中心标识为与预设数据中心标识不匹配的数据中心标识;
在确定路由标识中不存在第一数据中心标识的情况下,确定路由标识为合法标识。
在本发明实施例中,可以按照路由标识的排列顺序,对路由标识中的每一个数据中心标识依次验证,判断其是否为与预设数据中心标识不匹配的数据中心标识。
假设预设数据中心标识为A和B,如果路由标识为A、B、AB或者BA,由于这些路由标识中不存在A和B以外的其他标识,则这些路由标识均为合法标识。
在这些实施例中,可选地,根据预设数据中心标识确定路由标识中是否存在第一数据中心标识之后,确定路由标识是否为合法标识的具体方法还可以进一步包括:
在确定路由标识中存在第一数据中心标识的情况下,确定路由标识中是否存在第二数据中心标识;其中,第二数据中心标识为标识位置在第一数据中心标识之前且与预设数据中心标识匹配的数据中心标识;
在确定路由标识中存在第二数据中心标识的情况下,获取每个第二数据中心标识对应的数据中心的运行状态;
在确定第二数据中心标识中存在第三数据中心标识的情况下,确定路由标识为合法标识;其中,第三数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识;
在确定路由标识中不存在第二数据中心标识或者确定第二数据中心标识中不存在第三数据中心标识的情况下,确定路由标识不是合法标识。
在本发明实施例中,在确定路由标识中存在第一数据中心标识的情况下,可以在该第一数据中心标识之前查找是否有与预设数据中心标识匹配的第二数据中心标识,如果没有第二数据中心标识,则说明路由标识不是合法标识,如果有第二数据中心标识,还需要进一步判断第二数据中心标识对应的数据中心的运行状态,如果第二数据中心标识中存在第三数据中心标识,则说明路由标识为合法标识,如果不存在,则说明路由标识不是合法标识。
假设预设数据中心标识为A和B,如果路由标识为AY,Y不是预设数据中心标识,并且Y之前存在是预设数据中心标识的A,如果A的运行状态为正常运行状态,则AY为合法标识,如果A的运行状态不是正常运行状态,则AY不是合法标识。
继续假设预设数据中心标识为A和B,如果路由标识为AYB,Y不是预设数据中心标识,并且Y之前存在是预设数据中心标识的A,如果A的运行状态为正常运行状态,则AY为合法标识,如果A的运行状态不是正常运行状态,则AY不是合法标识。由此可见,路由标识是否为合法标识,与Y之后的B无关。
继续假设预设数据中心标识为A和B,如果路由标识为YA,Y不是预设数据中心标识,并且Y之前不存在是预设数据中心标识的标识,则AY不是合法标识。
在本发明实施例中,运行状态不是正常运行状态的情况可以有多种,例如,数据中心处于维护状态、数据中心发生灾难或者数据中心未启动等,在此不做限制。
在本发明实施例中,如果报文头信息中不存在路由标识字段、路由标识字段中不存在路由标识或者路由标识不是合法标识,均可以对该第一服务请求报文进行缺省响应。
在一些实施例中,在根据预设数据中心标识确定路由标识是否为合法标识之后,该服务调用方法还可以包括:
在确定路由标识不是合法标识的情况下,在至少一个缺省数据中心中,确定目标缺省数据中心;
向目标缺省数据中心发送第一服务请求报文,以使目标缺省数据中心为服务调用端提供服务。
由此,可以为路由标识不是合法标识的第一服务请求报文,在缺省回源地址池中,为其分配一个目标缺省数据中心,以利用目标缺省数据中心为其提供服务。
具体地,由于是对路由标识不是合法标识的第一服务请求报文进行响应,因此,所选择的至少一个缺省数据中心和目标缺省数据中心均可以是不带有图1中所示的分流规则服务器122的数据中心。
在另一些实施例中,在确定第一服务请求报文的报文头信息之后,该服务调用方法还可以包括:
在报文头信息中不存在路由标识的情况下,在至少一个缺省数据中心中,确定目标缺省数据中心;
向目标缺省数据中心发送第一服务请求报文,以使目标缺省数据中心为服务调用端提供服务。
由此,可以为报文头信息中不存在路由标识字段或者路由标识字段中不存在路由标识的第一服务请求报文,在缺省回源地址池中,为其分配一个目标缺省数据中心,以利用目标缺省数据中心为其提供服务。
具体地,由于报文头信息中不存在路由标识,则可以确定第一服务请求报文是服务调用端发送的首次报文,因此,所选择的至少一个缺省数据中心和目标缺省数据中心均需要带有图1中所示的分流规则服务器122的数据中心,以为服务调用端分配目标数据中心对应的路由标识,使服务调用端在本次启动后的运行过程中或者应用程序启动后的使用过程中,在后续发送的服务请求报文的报文头信息中增加路由标识,从而使报文分发设备能够快速地将其分配至对应的数据中心。
下面,以第一服务请求报文为首次报文为例,对如何为第一服务请求报文确定目标缺省数据中心进行详细说明。
在分布式服务系统中,报文分发设备可以预先设置有至少一个缺省数据中心,这些缺省数据中心构成了缺省回源地址池,缺省数据中心既可以是上述的数据中心,也可以是上述的数据中心以外的其他数据中心,在此不做限制。
在服务调用端首次发送服务请求报文时,由于分布式服务系统还未为该服务调用端分配可以目标数据中心,因此,第一服务请求报文的报文头信息中的路由标识字段中不存在路由标识,当报文分发设备接收到该第一服务请求报文,并且确定第一服务请求报文中不存在路由标识后,可以在至少一个缺省数据中心中根据预定选择规则或者随机选择一个作为目标缺省数据中心,并向目标缺省数据中心发送第一服务请求报文,以使目标缺省数据中心为服务调用端提供服务。
在本发明一些实施中,为了保证发送上述情况的第一服务请求报文的服务调用端在之后继续调用服务时,可以携带有分布式服务系统为其分配的目标数据中心对应的路由标识,在向目标缺省数据中心发送第一服务请求报文之后,该服务调用方法还可以包括:
接收目标缺省数据中心反馈的路由标识;
向服务调用端发送路由标识,以使服务调用端根据路由标识生成第二服务请求报文。
具体地,目标缺省数据中心为发送第一服务请求报文的服务调用端生成路由标识的方法将在下文详细描述,在此不做赘述。
在本发明实施例中,在接收到目标缺省数据中心反馈的路由标识后,可以向发送第一服务请求报文的服务调用端发送所接收到的路由标识,以使服务调用端根据路由标识在下次调用服务时,生成第二服务请求报文。
具体地,在服务调用端接收到路由标识,可以将路由标识保存在内存中,并且会在结束本次启动后的运行过程或者应用程序启动后的使用过程之前,在每次发送服务请求报文时,均在服务请求报文的报文头信息中的路由标识字段中加入该路由标识。但是,如果服务调用端或者服务调用端的应用程序关闭、重启或者发生故障后,由于路由标识被存储在内存中,则不会被持久化的存储,在重新启动服务调用端或者服务调用端的应用程序时,还会发送路由标识字段为空的服务请求报文。
在本发明一些实施例中,在确定路由标识为合法标识的情况下,根据路由标识在多个数据中心中确定目标数据中心的具体方法可以包括:
获取每个数据中心的运行状态;
在路由标识中存在第四数据中心标识的情况下,根据第四数据中心标识,在多个数据中心中,确定目标数据中心;其中,第四数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识。
在本发明实施例中,数据中心的运行状态可以包括正常运行状态、维护状态、数据中心发生灾难或者数据中心未启动等。其中,维护状态需要运维人员通过分布式服务系统对应的平台控制设备进行人工设置。当报文分发设备接收到用于表征任意数据中心的运行状态由正常运行状态变为其他运行状态的通知信息时,该数据中心将会被隔离,报文分发设备在之后的过程中不会主动对其进行探活检测,当该数据中心的运行状态恢复为正常运行状态时,报文分发设备会接受到用于表征该数据中心恢复正常运行状态的通知信息,从而对该数据中心解除隔离。
在一些实施例中,该服务调用方法还可以包括:
在路由标识中不存在第四数据中心标识的情况下,停止响应第一服务请求报文。
如果路由标识对应的全部数据中心的运行状态均不是正常运行状态,由于服务调用端调用服务的数据和日志都存储于路由标识对应的数据中心中,因此,则无法继续为服务调用端提供服务,报文分发设备需要停止响应第一服务请求报文,即第一服务请求报文响应失败。
在另一些实施例中,根据第四数据中心标识在多个数据中心中确定目标数据中心的具体方法可以包括:
在第四数据中心标识中,确定第五数据中心标识;其中,第五数据中心标识为标识位置在第四数据中心标识为首个的数据中心标识;
将第五数据中心标识对应的数据中心,作为目标数据中心。
在本发明实施例中,可以按照第四数据中心标识的顺序,选取第五数据中心标识,并将第五数据中心标识对应的数据中心,作为目标数据中心。
在本发明一些实施例中,由于报文分发设备需要通过传输线路与数据中心进行通信,因此,在向目标数据中心发送第一服务请求报文时,还可以对传输线路进行选择。
在一些实施例的S240中,向目标数据中心发送第一服务请求报文的具体方法可以包括:
在目标数据中心对应的正常传输线路中,确定目标传输线路;
利用目标传输线路,向目标数据中心发送第一服务请求报文。
可见,在本发明实施例中,仅会在目标数据中心对应的正常传输线路中确定目标传输线路,以利用目标传输线路向目标数据中心发送第一服务请求报文,保证成功向目标数据中心发送第一服务请求报文。
在另一些实施例中,在目标数据中心对应的正常传输线路中确定目标传输线路之前,该服务调用方法还可以包括:
获取目标数据中心对应的多个传输线路的线路调用数据;其中,线路调用数据包括连续调用失败次数和/或调用反馈数据;
根据线路调用数据,在多个传输线路中,确定正常传输线路。
具体地,无论是报文分发设备首次向目标数据中心发送服务请求报文,还是持续地向目标数据中心发送服务请求报文的过程中,都会每个预定时间对目标数据中心对应的多个传输线路进行检测,从而确定目标数据中心对应的正常传输线路。
在一些实施例中,线路调用数据可以包括调用反馈数据,例如,如果任一个传输线路对应的调用反馈数据为正常的响应反馈信息,则可以确定该传输线路为正常传输线路。
在另一些实施例中,线路调用数据可以包括连续调用失败次数,连续调用失败次数可以根据第数据中心无响应次数或者返回响应错误通知信息次数确定,如果任一个传输线路的连续调用失败次数未超过预定次数,则可以确定该传输线路为正常传输线路。
在又一些示例中,获取目标数据中心对应的多个传输线路的线路调用数据之后,该服务调用方法还可以包括:
根据线路调用数据,在多个传输线路中,确定异常传输线路;
每隔预设时间段,对异常传输线路进行探活检测,得到探活结果;
将探活结果为探活成功的异常传输线路,更新为正常传输线路。
在一些实施例中,线路调用数据包括调用反馈数据,例如,如果任一个传输线路对应的调用反馈数据为数据中心无响应或者返回响应错误通知信息,则可以确定该传输线路为异常传输线路。
在另一些实施例中,线路调用数据可以包括连续调用失败次数,如果任一个传输线路的连续调用失败次数超过预定次数,则可以确定该传输线路为异常传输线路。
在确定了异常传输线路后,需要每隔预设时间段对其进行探活检测,例如每隔30秒对异常传输线路进行探活检测,只要是探活成功,则该传输线路则变更为正常传输线路,可以参与对服务请求报文的传输。
在又一些实施例中,根据线路调用数据在多个传输线路中确定正常传输线路之后,该服务调用方法还可以包括:
在多个传输线路中不存在正常传输线路的情况下,停止响应第一服务请求报文。
具体地,即使目标数据中心对应的所有传输线路均为异常传输线路,报文分发设备也不会对数据中心进行切换,必须由人工决策后通过维护接口来对数据中心进行隔离。
在本发明一些实施例中,如图1所示,数据中心120具有一个负载均衡设备121,S240的具体方法还可以为:
向目标数据中心的负载均衡设备发送第一服务请求报文,以使负载均衡设备根据负载平衡策略在目标数据中心的多个应用服务器中选择目标应用服务器,以使目标应用服务器为服务调用端提供服务。
在本发明另一些实施例中,如果每个数据中心不具备负载均衡设备,S240的具体方法还可以为:
根据负载平衡策略在目标数据中心的多个应用服务器中选择目标应用服务器;
根据目标应用服务器的服务器地址,向目标应用服务器发送第一服务请求报文,以使目标应用服务器为服务调用端提供服务。
在本发明一个实施例中,报文分发设备执行报文分发流程的具体流程可以为:
在报文分发设备接收到服务调用端发送的第一服务请求报文之后,可以解析第一服务请求报文,得到报文头信息。
一般情况下,如果接收到的第一服务请求报文为首次报文,则报文头信息中不存在路由标识,如果接收到的第一服务请求报文不是首次报文,则报文头信息中存在路由标识。
报文分发设备在确定报文头信息中不存在路由标识后,可以在至少一个缺省数据中心中为其分配带有分流规程服务器的目标缺省数据中心,并将第一服务请求报文发送至目标缺省数据中心,使目标缺省数据中心的分流规程服务器能够为其分配目标数据中心,并且生成该服务调用端对应的路由标识,使服务调用端可以基于路由标识生成第二服务请求报文,直至服务调用端停止本次启动或者应用程序停止本次启动后,服务调用端如果需要再次启动或者应用程序如果需要再次启动,则会再次发出报文头信息中存在路由标识的服务请求报文。
报文分发设备在确定报文头信息中存在路由标识后,可以识别路由标识是否为合法标识,如果不是合法标识,可以在至少一个缺省数据中心中为目标缺省数据中心;如果是合法标识,则可以根据路由标识确定目标数据中心,并将第一服务请求报文发送目标数据中心。
综上所述,在本发明实施例中,由于报文分发设备仅根据路由标识即可以实现对服务请求报文的分流,无需获取服务请求报文中的业务要素,例如用户标识和用户通信账号等,避免了用户隐私被暴露于报文分发设备的提供方,可以提高用户隐私的安全性。
图3示出了本发明另一个实施例提供的服务调用方法的流程示意图。
在本发明一些实施例中,图3所示的服务调用方法可以由路由设备执行,例如,图1所示的分流规则服务器122。如图3所示,该服务调用方法可以包括:
S310、获取第一服务请求报文;其中,第一服务请求报文的报文头信息中不存在路由标识;
S320、在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心;
S330、根据目标数据中心对应的数据中心标识,生成服务调用端对应的路由标识;
S340、向服务调用端发送路由标识。
在本发明实施例中,能够为发送报文头信息中不存在路由标识的第一服务请求报文的服务调用端生成路由标识,以使服务调用端可以根据路由标识生成新的服务调用请求,使报文分发设备在再次接收到服务调用端发送的服务请求报文的情况下,能够基于路由标识,确定服务调用端对应的目标数据中心,并向目标数据中心发送该服务请求报文,从而能够利用路由标识,快速、高效地实现对第一服务请求报文的分流处理,提高服务调用的效率。
另外,由于在本发明实施例中,可以在路由设备中为服务调用端分配目标数据中心并且生成服务调用端对应的路由标识,则可以使路由配置与报文分发设备分离,配置时无需报文分发设备配合,从而提高了路由配置、调整维护的灵活性。
在本发明一些实施例中,路由设备所属的目标缺省数据中的负载均衡设备可以对第一服务请求报文进行解析,如果第一服务请求报文中的请求服务地址为目标请求服务地址,则可以确定该第一服务请求报文为服务调用端发送的首次报文,即第一服务请求报文的报文头信息中不存在路由标识。
在本发明一些实施例中,S320的具体方法可以包括:
确定每个数据中心的负载量;
根据负载量,在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心。
具体地,每个数据中心具有一个分流权重,这个分流权重可以由用户配置并且调整,也可以是固定权重。
路由设备根据每个数据中心对应的分流权重和实际分配报文数量,能够计算出每个数据中心在接收到第一服务请求报文的时刻的负载量,然后,可以选取负载量最小的预设数量的数据中心,作为目标数据中心。
在本发明另一些实施例中,S330的具体方法还可以包括:
获取第一服务请求报文对应的请求用户信息;其中,请求用户信息包括请求用户标识和请求用户位置信息中的至少一种;
根据请求用户信息,在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心。
在一些实施例中,可以根据用户位置信息,确定服务调用端与各个数据中心之间的距离,然后选取距离最小的预设数量的数据中心,作为目标数据中心。
在另一些实施例中,可以根据请求用户标识,确定其是否为目标用户,例如某些灰度发布、专门人群营销等特定业务需要的用户,如果是目标用户,则可以在数据中心中确定为目标用户指定的数据中心,作为目标数据中心。
由此,本发明实施例可以基于每个数据中心的负载量和/或请求用户信息为服务调用端生成路由标识,分流策略十分灵活,具有较高的参考价值。
在本发明一些实施例的S340中,路由设备可以存储有与报文分发设备相同的预设数据中心标识,并且在预设数据中心标识中,找到目标数据中心对应的数据中心标识,并确定各个目标数据中心的优先级,根据优先级生成服务调用端对应的路由标识。
其中,如果是基于负载量选取的目标数据中心,负载量越小的目标数据中心的优先级越高;如果是基于用户位置信息选取的目标数据中心,距离越小的目标数据中心的优先级越高。
在本发明一些实施例的S350中,路由设备可以通过其所属的目标缺省数据中的负载均衡设备向报文分发设备发送路由标识,再由报文分发设备将其转发至服务调用端。
图4示出了本发明一个实施例提供的服务调用装置的结构示意图。
在本发明一些实施例中,图4所示的服务调用装置可以设置于报文分发设备内,例如,图1所示的CDN 110的任一个内容分发服务器或者应用系统服务器。如图4所示,该服务调用装置可以包括:
第一报文接收模块410,用于接收服务调用端发送的第一服务请求报文;
第一报文处理模块420,用于响应于第一服务请求报文,确定第一服务请求报文的报文头信息;
第一中心确定模块430,用于在报文头信息中存在路由标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心;
请求报文发送模块440,用于向目标数据中心发送第一服务请求报文,以使第一目标数据中心为服务调用端提供服务。
在本发明实施例中,能够在接收到服务调用端发送的第一服务请求报文的情况下,基于第一服务请求报文的报文头信息中的路由标识,在多个数据中心中,确定服务调用端对应的目标数据中心,并向所确定的目标数据中心发送第一服务请求报文,以使第一目标数据中心为服务调用端提供服务,从而能够利用路由标识,快速、高效地实现对第一服务请求报文的分流处理,提高服务调用的效率。
在本发明一些实施例中,第一中心确定模块430可以具体用于:
获取预设数据中心标识;
根据预设数据中心标识,确定路由标识是否为合法标识;
在确定路由标识为合法标识的情况下,根据路由标识,在多个数据中心中,确定目标数据中心。
在本发明一些实施例中,第一中心确定模块430还可以进一步用于:
确定路由标识中是否存在第一数据中心标识;其中,第一数据中心标识为与预设数据中心标识不匹配的数据中心标识;
在确定路由标识中不存在第一数据中心标识的情况下,确定路由标识为合法标识。
在本发明一些实施例中,第一中心确定模块430还可以进一步用于:
在确定路由标识中存在第一数据中心标识的情况下,确定路由标识中是否存在第二数据中心标识;其中,第二数据中心标识为标识位置在第一数据中心标识之前且与预设数据中心标识匹配的数据中心标识;
在确定路由标识中存在第二数据中心标识的情况下,获取每个第二数据中心标识对应的数据中心的运行状态;
在确定第二数据中心标识中存在第三数据中心标识的情况下,确定路由标识为合法标识;其中,第三数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识。
在本发明一些实施例中,第一中心确定模块430还可以进一步用于在确定路由标识不是合法标识的情况下,在至少一个缺省数据中心中,确定目标缺省数据中心;请求报文发送模块440还可以进一步用于向目标缺省数据中心发送第一服务请求报文,以使目标缺省数据中心为服务调用端提供服务。
在本发明一些实施例中,第一中心确定模块430还可以进一步用于在报文头信息中不存在路由标识的情况下,在至少一个缺省数据中心中,确定目标缺省数据中心;请求报文发送模块440还可以进一步用于向目标缺省数据中心发送第一服务请求报文,以使目标缺省数据中心为服务调用端提供服务。
在本发明一些实施例中,该服务调用装置还可以包括:
路由标识接收模块,用于接收目标缺省数据中心反馈的路由标识;
路由标识转发模块,用于向服务调用端发送路由标识,以使服务调用端根据路由标识生成第二服务请求报文。
在本发明一些实施例中,第一中心确定模块430还具体用于:
获取每个数据中心的运行状态;
在路由标识中存在第四数据中心标识的情况下,根据第四数据中心标识,在多个数据中心中,确定目标数据中心;其中,第四数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识。
在本发明一些实施例中,该服务调用装置还可以包括:
第一响应控制模块,用于在路由标识中不存在第四数据中心标识的情况下,停止响应第一服务请求报文。
在本发明一些实施例中,第一中心确定模块430还具体用于:
在第四数据中心标识中,确定第五数据中心标识;其中,第五数据中心标识为标识位置在第四数据中心标识为首个的数据中心标识;
将第五数据中心标识对应的数据中心,作为目标数据中心。
在本发明一些实施例中,请求报文发送模块440具体用于:
在第一目标数据中心对应的正常传输线路中,确定目标传输线路;
利用目标传输线路,向目标数据中心发送第一服务请求报文。
在本发明一些实施例中,该服务调用装置还可以包括:
线路数据获取模块,用于获取目标数据中心对应的多个传输线路的线路调用数据;其中,线路调用数据包括连续调用失败次数和/或调用反馈数据;
第一线路确定模块,用于根据线路调用数据,在多个传输线路中,确定正常传输线路。
在本发明一些实施例中,该服务调用装置还可以包括:
第二线路确定模块,用于根据线路调用数据,在多个传输线路中,确定异常传输线路;
线路探活检测模块,用于每隔预设时间段,对异常传输线路进行探活检测,得到探活结果;
第三线路确定模块,用于将探活结果为探活成功的异常传输线路,更新为正常传输线路。
在本发明一些实施例中,该服务调用装置还可以包括:
第二响应控制模块,用于在多个传输线路中不存在正常传输线路的情况下,停止响应第一服务请求报文。
需要说明的是,图4所示实施例提供的数服务调用装置能够实现图2的方法实施例中报文分发设备所实现的各个过程和效果,并且实现原理相同,为避免重复,这里不再赘述。
图5示出了本发明另一个实施例提供的服务调用装置的结构示意图。
在本发明一些实施例中,图5所示的服务调用装置可以设置于路由设备内,例如,图1所示的分流规则服务器122。如图5示,该服务调用装置可以包括:
第二报文接收模块510,用于获取第一服务请求报文;其中,第一服务请求报文的报文头信息中不存在路由标识;
第二中心确定模块520,用于在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心;
路由标识生成模块530,用于根据目标数据中心对应的数据中心标识,生成服务调用端对应的路由标识;
路由标识发送模块540,用于向服务调用端发送路由标识。
在本发明实施例中,能够为发送报文头信息中不存在路由标识的第一服务请求报文的服务调用端生成路由标识,以使服务调用端可以根据路由标识生成新的服务调用请求,使报文分发设备在再次接收到服务调用端发送的服务请求报文的情况下,能够基于路由标识,确定服务调用端对应的目标数据中心,并向目标数据中心发送该服务请求报文,从而能够利用路由标识,快速、高效地实现对第一服务请求报文的分流处理,提高服务调用的效率。
在本发明一些实施例中,第二中心确定模块520可以具体用于:
确定每个数据中心的负载量;
根据负载量,在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心。
在本发明另一些实施例中,第二中心确定模块520还可以具体用于:
获取第一服务请求报文对应的请求用户信息;其中,请求用户信息包括请求用户标识和请求用户位置信息中的至少一种;
根据请求用户信息,在多个数据中心中,为发送第一服务请求报文的服务调用端分配目标数据中心。
需要说明的是,图5所示实施例提供的数服务调用装置能够实现图3的方法实施例中路由设备所实现的各个过程和效果,并且实现原理相同,为避免重复,这里不再赘述。
图6是本发明一个实施例提供的服务调用设备的硬件结构示意图。如图6所示,该服务调用设备可以包括处理器601以及存储有计算机程序指令的存储器602。
具体地,上述处理器601可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。
存储器602可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器602可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器602可在综合网关容灾设备的内部或外部。在特定实施例中,存储器602是非易失性固态存储器。在特定实施例中,存储器602包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现上述实施例中的任意一种服务调用方法。
在一个示例中,服务调用设备还可包括通信接口603和总线610。其中,如图6所示,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。
通信接口603,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
总线610包括硬件、软件或两者,将服务调用设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-E6press(PCI-6)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
该服务调用设备可以执行本发明实施例中的服务调用方法,从而实现结合图2至图5描述的服务调用方法和装置。
另外,结合上述实施例中的服务调用方法,本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种服务调用方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

Claims (17)

1.一种服务调用方法,其特征在于,包括:
接收服务调用端发送的第一服务请求报文;
响应于所述第一服务请求报文,确定所述第一服务请求报文的报文头信息;
在所述报文头信息中存在路由标识的情况下,根据获取到的预设数据中心标识,确定所述路由标识是否为合法标识;
在确定所述路由标识为所述合法标识的情况下,根据所述路由标识,在多个数据中心中,确定目标数据中心;
向所述目标数据中心发送所述第一服务请求报文,以使所述目标数据中心为所述服务调用端提供服务;
在所述报文头信息中不存在所述路由标识的情况下,在至少一个缺省数据中心中,根据预定选择规则确定目标缺省数据中心;
向所述目标缺省数据中心发送所述第一服务请求报文,以使目标缺省数据中心为所述服务调用端提供服务;
接收所述目标缺省数据中心反馈的所述路由标识;
向所述服务调用端发送所述路由标识,以使所述服务调用端根据所述路由标识生成第二服务请求报文。
2.根据权利要求1所述的方法,其特征在于,所述根据所述预设数据中心标识,确定所述路由标识是否为合法标识,包括:
确定所述路由标识中是否存在第一数据中心标识;其中,所述第一数据中心标识为与所述预设数据中心标识不匹配的数据中心标识;
在确定所述路由标识中不存在所述第一数据中心标识的情况下,确定所述路由标识为所述合法标识。
3.根据权利要求2所述的方法,其特征在于,所述确定所述路由标识中是否存在第一数据中心标识之后,还包括:
在确定所述路由标识中存在所述第一数据中心标识的情况下,确定所述路由标识中是否存在第二数据中心标识;其中,所述第二数据中心标识为标识位置在所述第一数据中心标识之前且与所述预设数据中心标识匹配的数据中心标识;
在确定所述路由标识中存在所述第二数据中心标识的情况下,获取每个所述第二数据中心标识对应的数据中心的运行状态;
在确定所述第二数据中心标识中存在第三数据中心标识的情况下,确定所述路由标识为所述合法标识;其中,所述第三数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识。
4.根据权利要求1所述的方法,其特征在于,所述根据所述预设数据中心标识,确定所述路由标识是否为合法标识之后,还包括:
在确定所述路由标识不是所述合法标识的情况下,在至少一个缺省数据中心中,确定目标缺省数据中心;
向所述目标缺省数据中心发送所述第一服务请求报文,以使目标缺省数据中心为所述服务调用端提供服务。
5.根据权利要求1所述的方法,其特征在于,所述根据所述路由标识,在多个数据中心中,确定目标数据中心,包括:
获取每个所述数据中心的运行状态;
在所述路由标识中存在第四数据中心标识的情况下,根据所述第四数据中心标识,在多个所述数据中心中,确定目标数据中心;其中,所述第四数据中心标识为运行状态为正常运行状态的数据中心对应的数据中心标识。
6.根据权利要求5所述的方法,其特征在于,还包括:
在所述路由标识中不存在第四数据中心标识的情况下,停止响应所述第一服务请求报文。
7.根据权利要求 6所述的方法,其特征在于,所述根据所述第四数据中心标识,在多个所述数据中心中,确定目标数据中心,包括:
在所述第四数据中心标识中,确定第五数据中心标识;其中,所述第五数据中心标识为标识位置在所述第四数据中心标识为首个的数据中心标识;
将所述第五数据中心标识对应的数据中心,作为所述目标数据中心。
8.根据权利要求1所述的方法,其特征在于,所述向所述目标数据中心发送所述第一服务请求报文,包括:
在所述目标数据中心对应的正常传输线路中,确定目标传输线路;
利用所述目标传输线路,向所述目标数据中心发送所述第一服务请求报文。
9.根据权利要求8所述的方法,其特征在于,所述在所述目标数据中心对应的正常传输线路中,确定目标传输线路之前,还包括:
获取所述目标数据中心对应的多个传输线路的线路调用数据;其中,所述线路调用数据包括连续调用失败次数和/或调用反馈数据;
根据所述线路调用数据,在所述多个传输线路中,确定所述正常传输线路。
10.根据权利要求9所述的方法,其特征在于,所述获取所述目标数据中心对应的多个传输线路的线路调用数据之后,还包括:
根据所述线路调用数据,在所述多个传输线路中,确定异常传输线路;
每隔预设时间段,对所述异常传输线路进行探活检测,得到探活结果;
将所述探活结果为探活成功的异常传输线路,更新为所述正常传输线路。
11.根据权利要求9所述的方法,其特征在于,所述根据所述线路调用数据,在所述多个传输线路中,确定所述正常传输线路之后,还包括:
在所述多个传输线路中不存在所述正常传输线路的情况下,停止响应所述第一服务请求报文。
12.根据权利要求1所述的方法,其特征在于,所述响应于所述第一服务请求报文,确定所述第一服务请求报文的报文头信息之后,所述方法还包括:
在确定所述报文头信息中不存在路由标识的情况下,在多个数据中心中,为发送所述第一服务请求报文的服务调用端分配目标数据中心;
根据所述目标数据中心对应的数据中心标识,生成所述服务调用端对应的路由标识;
向所述服务调用端发送所述路由标识。
13.根据权利要求12所述的方法,其特征在于,所述在多个数据中心中,为发送所述第一服务请求报文的服务调用端分配目标数据中心,包括:
确定每个所述数据中心的负载量;
根据所述负载量,在多个所述数据中心中,为发送所述第一服务请求报文的所述服务调用端分配所述目标数据中心。
14.根据权利要求12所述的方法,其特征在于,所述在多个数据中心中,为发送所述第一服务请求报文的服务调用端分配目标数据中心,包括:
获取所述第一服务请求报文对应的请求用户信息;其中,所述请求用户信息包括请求用户标识和请求用户位置信息中的至少一种;
根据所述请求用户信息,在多个所述数据中心中,为发送所述第一服务请求报文的服务调用端分配所述目标数据中心。
15.一种服务调用装置,其特征在于,包括:
第一报文接收模块,用于接收服务调用端发送的第一服务请求报文;
第一报文处理模块,用于响应于所述第一服务请求报文,确定所述第一服务请求报文的报文头信息;
第一中心确定模块,用于在所述报文头信息中存在路由标识的情况下,根据获取到的预设数据中心标识,确定所述路由标识是否为合法标识;
所述第一中心确定模块还用于,在确定所述路由标识为所述合法标识的情况下,根据所述路由标识,在多个第一数据中心中,确定目标数据中心;
请求报文发送模块,用于向所述目标数据中心发送所述第一服务请求报文,以使所述目标数据中心为所述服务调用端提供服务;
所述第一中心确定模块还用于,在所述报文头信息中不存在所述路由标识的情况下,在至少一个缺省数据中心中,根据预定选择规则确定目标缺省数据中心;
所述请求报文发送模块还用于,向所述目标缺省数据中心发送所述第一服务请求报文,以使目标缺省数据中心为所述服务调用端提供服务;
路由标识接收模块,用于接收所述目标缺省数据中心反馈的所述路由标识;
路由标识转发模块,用于向所述服务调用端发送所述路由标识,以使所述服务调用端根据所述路由标识生成第二服务请求报文。
16.一种服务调用设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;
所述处理器执行所述计算机程序指令时实现如权利要求1-14任意一项所述的服务调用方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-14任意一项所述的服务调用方法。
CN201911413857.5A 2019-12-31 2019-12-31 服务调用方法、装置、设备及介质 Active CN110913025B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201911413857.5A CN110913025B (zh) 2019-12-31 2019-12-31 服务调用方法、装置、设备及介质
EP20909561.1A EP3968607B1 (en) 2019-12-31 2020-09-25 Service invocation methods
US17/619,745 US11677815B2 (en) 2019-12-31 2020-09-25 Service invoking method, device, apparatus and medium
PCT/CN2020/117617 WO2021135448A1 (zh) 2019-12-31 2020-09-25 服务调用方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911413857.5A CN110913025B (zh) 2019-12-31 2019-12-31 服务调用方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN110913025A CN110913025A (zh) 2020-03-24
CN110913025B true CN110913025B (zh) 2022-06-24

Family

ID=69814190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911413857.5A Active CN110913025B (zh) 2019-12-31 2019-12-31 服务调用方法、装置、设备及介质

Country Status (4)

Country Link
US (1) US11677815B2 (zh)
EP (1) EP3968607B1 (zh)
CN (1) CN110913025B (zh)
WO (1) WO2021135448A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110913025B (zh) * 2019-12-31 2022-06-24 中国银联股份有限公司 服务调用方法、装置、设备及介质
CN111930624B (zh) * 2020-08-12 2024-04-05 中国工商银行股份有限公司 测试链路报文数据处理方法及装置
CN114531492B (zh) * 2020-11-05 2024-05-10 网联清算有限公司 服务调用方法、装置、存储介质及计算机设备
CN115333936A (zh) * 2021-04-22 2022-11-11 贵州白山云科技股份有限公司 切换回源策略的方法、装置、介质及设备
CN113285888B (zh) * 2021-04-30 2023-10-24 中国银联股份有限公司 多业务系统多数据中心分流方法、装置、设备及介质
CN114390109B (zh) * 2021-12-13 2024-02-20 中国银联股份有限公司 一种业务处理方法、微服务网关及数据中心系统
CN115002227B (zh) * 2022-05-19 2024-03-22 青岛海尔科技有限公司 用户访问请求响应方法、存储介质及电子设备
CN115037653B (zh) * 2022-06-28 2023-10-13 北京奇艺世纪科技有限公司 业务流量监控方法、装置、电子设备和存储介质
CN115981872B (zh) * 2023-03-17 2023-12-01 北京百度网讯科技有限公司 算法资源的调用方法、装置、电子设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104144183A (zh) * 2013-05-08 2014-11-12 株式会社日立制作所 数据中心系统及数据中心系统的管理方法
CN108259605A (zh) * 2018-01-17 2018-07-06 深圳市和讯华谷信息技术有限公司 一种基于多数据中心的数据调用系统及方法
CN109120697A (zh) * 2018-08-20 2019-01-01 常州信息职业技术学院 一种基于网络通信的服务调用方法和装置
CN109445960A (zh) * 2018-10-18 2019-03-08 腾讯科技(深圳)有限公司 应用的路由方法、装置及存储介质
CN110333957A (zh) * 2019-05-30 2019-10-15 重庆金融资产交易所有限责任公司 远程过程调用rpc服务调用方法、装置和计算机设备
CN110336865A (zh) * 2019-06-21 2019-10-15 北京大米科技有限公司 服务调用方法、装置、存储介质和电子设备
CN110602169A (zh) * 2019-08-13 2019-12-20 上海陆家嘴国际金融资产交易市场股份有限公司 服务调用方法、装置、计算机设备和存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8554758B1 (en) * 2005-12-29 2013-10-08 Amazon Technologies, Inc. Method and apparatus for monitoring and maintaining health in a searchable data service
US7694014B2 (en) * 2007-07-30 2010-04-06 International Business Machines Corporation Automatic relaxing and revising of target server specifications for enhanced requests servicing
CN102333029B (zh) * 2011-06-23 2014-04-16 北京新媒传信科技有限公司 一种服务器集群系统中的路由方法
US9917889B2 (en) * 2012-11-01 2018-03-13 Ebay Inc. Enterprise service bus routing system
JP6673356B2 (ja) 2015-08-04 2020-03-25 日本電気株式会社 通信システム、通信装置、通信方法、端末、プログラム
US10498654B2 (en) * 2015-12-28 2019-12-03 Amazon Technologies, Inc. Multi-path transport design
CN105915427B (zh) * 2016-03-31 2019-12-17 华为技术有限公司 一种报文发送、接收方法及设备
US10348800B2 (en) 2017-02-08 2019-07-09 Microsoft Technology Licensing, Llc Invocation context caching
CN107633016B (zh) * 2017-08-23 2020-11-24 创新先进技术有限公司 数据处理方法及装置和电子设备
CN108011826A (zh) * 2017-12-01 2018-05-08 锐捷网络股份有限公司 路由方法、路由设备、通信系统及存储介质
US11258775B2 (en) * 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
CN108881448B (zh) * 2018-06-27 2021-06-04 杭州贝购科技有限公司 Api请求的处理方法及装置
CN109525550B (zh) * 2018-09-30 2021-05-04 创新先进技术有限公司 一种数据报文的处理方法、装置以及系统
CN110581890B (zh) * 2019-09-10 2022-02-22 中国建设银行股份有限公司 一种服务请求的路由方法和装置
CN110913025B (zh) 2019-12-31 2022-06-24 中国银联股份有限公司 服务调用方法、装置、设备及介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104144183A (zh) * 2013-05-08 2014-11-12 株式会社日立制作所 数据中心系统及数据中心系统的管理方法
CN108259605A (zh) * 2018-01-17 2018-07-06 深圳市和讯华谷信息技术有限公司 一种基于多数据中心的数据调用系统及方法
CN109120697A (zh) * 2018-08-20 2019-01-01 常州信息职业技术学院 一种基于网络通信的服务调用方法和装置
CN109445960A (zh) * 2018-10-18 2019-03-08 腾讯科技(深圳)有限公司 应用的路由方法、装置及存储介质
CN110333957A (zh) * 2019-05-30 2019-10-15 重庆金融资产交易所有限责任公司 远程过程调用rpc服务调用方法、装置和计算机设备
CN110336865A (zh) * 2019-06-21 2019-10-15 北京大米科技有限公司 服务调用方法、装置、存储介质和电子设备
CN110602169A (zh) * 2019-08-13 2019-12-20 上海陆家嘴国际金融资产交易市场股份有限公司 服务调用方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN110913025A (zh) 2020-03-24
EP3968607B1 (en) 2023-09-13
US20220360625A1 (en) 2022-11-10
EP3968607A1 (en) 2022-03-16
WO2021135448A1 (zh) 2021-07-08
EP3968607A4 (en) 2022-08-10
US11677815B2 (en) 2023-06-13

Similar Documents

Publication Publication Date Title
CN110913025B (zh) 服务调用方法、装置、设备及介质
CN109302346B (zh) 一种传输数据流量的方法和装置
CN110611723B (zh) 一种服务资源的调度方法及装置
CN110855792B (zh) 一种消息推送方法、装置、设备及介质
CN108810116B (zh) 消息处理方法及相关产品
CN111787069A (zh) 业务接入请求的处理方法、装置、设备及计算机存储介质
CN103460648A (zh) 用于在具有分布式消息处理器架构的 Diameter 信令路由器(DSR)内屏蔽Diameter 消息的方法、系统和计算机可读介质
CN110430135B (zh) 一种报文处理方法和装置
US9705903B2 (en) Call control device, call control method, and call control system
CN111314328A (zh) 网络攻击防护方法、装置、存储介质及电子设备
CN111800501B (zh) 处理业务请求的方法及装置、存储介质、电子设备
CN111884875A (zh) 一种离线设备确定方法及装置
CN113708979A (zh) 网络加速的方法和装置
CN110738502A (zh) 一种票据处理方法、装置及存储介质装置
CN113423120A (zh) 基于专网终端的数据分流处理方法、装置及电子设备
CN115412609B (zh) 一种业务处理方法、装置、服务器及存储介质
CN105827425B (zh) 一种网络控制的方法及装置
KR100715645B1 (ko) 전자메일 과금 시스템 및 전자메일 과금 방법
US8924547B1 (en) Systems and methods for managing network devices based on server capacity
CN111510415B (zh) 黑名单号码共享及识别方法、装置、设备、存储介质
CN110166473B (zh) 网络数据传输检测方法、装置、设备和介质
CN112019436B (zh) 传输路径选择方法、装置、设备及介质
CN112350931B (zh) 业务处理方法、装置、设备及计算机存储介质
CN113572868B (zh) 动态拨号上网方法及系统
JP2018097805A (ja) 攻撃通知システムおよび攻撃通知方法

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