CN115509628A - 微服务调用方法、装置、设备及存储介质 - Google Patents

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

Info

Publication number
CN115509628A
CN115509628A CN202110688050.3A CN202110688050A CN115509628A CN 115509628 A CN115509628 A CN 115509628A CN 202110688050 A CN202110688050 A CN 202110688050A CN 115509628 A CN115509628 A CN 115509628A
Authority
CN
China
Prior art keywords
micro
service
micro service
module
registration address
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.)
Pending
Application number
CN202110688050.3A
Other languages
English (en)
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 Mobile Communications Group Co Ltd
China Mobile Group Chongqing Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Chongqing 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 Mobile Communications Group Co Ltd, China Mobile Group Chongqing Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202110688050.3A priority Critical patent/CN115509628A/zh
Publication of CN115509628A publication Critical patent/CN115509628A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例提供一种微服务调用方法、装置、设备及存储介质。该方法包括:获取目标系统中第一微服务调用第二微服务的调用请求,目标系统包括至少一个业务模块,调用请求包括第一微服务的第一微服务注册地址,第二微服务的第二微服务注册地址,第一微服务注册地址包括第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识;根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用;若支持,则根据第二微服务标识,调用第二微服务,提高微服务调用效率和安全性。

Description

微服务调用方法、装置、设备及存储介质
技术领域
本申请涉及微服务技术领域,尤其涉及一种微服务调用方法、装置、设备及存储介质。
背景技术
对于一个互联网系统,往往由多个业务模块组成。由于业务模块的规模比较庞大,业务模块内往往需要微服务调用,业务模块之间也需要微服务调用。
传统的微服务调用方案,通常是将业务模块看成一个独立的平台,业务模块之间完全隔离,业务模块之间的微服务调用采用能力开放方式实现,即将微服务封装一层至能力层,再将能力放置到专用能力开发平台中,实现能力调用。
但是传统的微服务调用方案需要建立能力层,并通过能力层间接实现微服务调用,降低了微服务调用的效率。
发明内容
本申请实施例提供了一种微服务调用方法、装置、设备及存储介质,能够提高微服务调用效率和安全性。
第一方面,本申请实施例提供一种微服务调用方法,该方法包括:
获取目标系统中第一微服务调用第二微服务的调用请求,其中,目标系统包括至少一个业务模块,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,第一微服务注册地址包括至少一个业务模块中第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括至少一个业务模块中第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识;
根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用;
在第二微服务支持被第一微服务调用的情况下,根据第二微服务标识,调用第二微服务。
第二方面,本申请实施例提供一种微服务调用装置,该装置包括:
获取模块,用于获取目标系统中第一微服务调用第二微服务的调用请求,其中,目标系统包括至少一个业务模块,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,第一微服务注册地址包括至少一个业务模块中第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括至少一个业务模块中第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识;
确定模块,用于根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用;
调用模块,用于在第二微服务支持被第一微服务调用的情况下,根据第二微服务标识,调用第二微服务。
第三方面,本申请实施例提供一种微服务调用设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面所述的微服务调用方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面所述的微服务调用方法。
本申请实施例提供的一种微服务调用方法、装置、设备及存储介质,可以获取目标系统中第一微服务调用第二微服务的调用请求,其中,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用,在第二微服务支持被第一微服务调用的情况下,根据第二微服务的第二微服务标识,调用第二微服务。如此一来,可以基于申请微服务调用的微服务与被调用的微服务的微服务注册地址,快速确定本次微服务调用是否可行,在可行的情况下,快速调用微服务,提高微服务调用效率和安全性,降低后端微服务的压力。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种微服务调用场景示意图;
图2是本申请实施例提供的一种微服务调用方法的流程示意图;
图3是本申请实施例提供的一种电子设备的结构示意图;
图4是本申请实施例提供的一种微服务调用装置的结构示意图;
图5是本申请实施例提供的一种微服务调用设备的结构示意图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
针对背景技术中出现的问题,本申请实施例提供了一种微服务调用方法、装置、设备及存储介质。可以获取目标系统中第一微服务调用第二微服务的调用请求,其中,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用,在第二微服务支持被第一微服务调用的情况下,根据第二微服务的第二微服务标识,调用第二微服务。如此一来,可以基于申请微服务调用的微服务与被调用的微服务的微服务注册地址,快速确定本次微服务调用是否可行,在可行的情况下,快速调用微服务,提高微服务调用效率和安全性,降低后端微服务的压力。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的微服务调用方法、装置、设备及存储介质进行详细地说明。
图1是本申请实施例提供的一种微服务调用场景示意图,如图1所示,该微服务调用场景中存在电子设备110和目标系统120,电子设备110和目标系统120通信连接,通信方式可以是有线通信或者无线通信。
其中,电子设备110可以为服务器、网络附属存储器(Network Attached Storage,NAS)或者个人计算机(Personal Computer,PC)等等。
目标系统120可以是互联网技术(Internet Technology,IT)系统,例如通信系统、支付系统或者物联网系统等等,在此不做限制。其中,目标系统120可以包括多个业务模块,每个业务模块的业务可以由多个微服务组合实现。
如图1所示,在目标系统120中,业务模块执行业务时,需要调用微服务。具体地,电子设备110可以获取目标系统120中第一微服务调用第二微服务的调用请求,其中,第一微服务为申请微服务调用的微服务,第二微服务为被调用的微服务,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,第一微服务注册地址包括第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识。示例性地,微服务注册地址用于微服务链路的跟踪与分析,模块标识用于表示模块的身份,微服务类型用于表示微服务的控制类型,微服务标识用于表示微服务的身份。然后可以根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用。在第二微服务支持被第一微服务调用的情况下,根据第二微服务标识,调用第二微服务。
如此一来,可以基于申请微服务调用的微服务与被调用的微服务的微服务注册地址,快速确定本次微服务调用是否可行,在可行的情况下,快速调用微服务,提高微服务调用效率和安全性,降低后端微服务的压力。
下面将介绍本申请实施例提供的微服务调用方法。其中,该微服务调用方法的执行主体可以是图1所示的电子设备110。
图2是本申请实施例提供的一种微服务调用方法的流程示意图,如图2所示,该微服务调用方法可以包括以下步骤:
S210,获取目标系统中第一微服务调用第二微服务的调用请求。
其中,目标系统包括至少一个业务模块,第一微服务为申请微服务调用的微服务,第二微服务为被调用的微服务,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,第一微服务注册地址包括至少一个业务模块中第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括至少一个业务模块中第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识。
可以理解的是,微服务注册地址用于微服务链路的跟踪与分析,模块标识用于表示模块的身份,可以为模块名称,微服务类型用于表示微服务的控制类型。微服务标识用于表示微服务的身份,可以为微服务名称,其中微服务名称可以视为微服务真实地址。
作为一个示例,在目标系统中,业务模块执行业务时,需要调用微服务。此时,可以接收部署第一微服务的服务器发送的第一微服务调用第二微服务的调用请求。
S220,根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用。
可选地,在第二微服务类型为公共类型的情况下,可以确定第二微服务支持被第一微服务调用。其中,公共类型表示微服务支持任意业务模块的任意微服务调用。
例如,第一微服务为微服务a,第一微服务注册地址为/module_x/public/server_a,其中,第一模块标识为module_x,第一微服务类型为public,第一微服务标识为server_a。第二微服务为微服务b,第二微服务注册地址为/module_x/public/server_b,其中,第二模块标识为module_x,第二微服务类型为public,第二微服务标识为server_b。通过比对可知,第二微服务类型为public即公共类型,也就是说,第二微服务支持任意微服务调用。此时,可以确定第二微服务支持被第一微服务调用。
在第二微服务类型为内部类型,且第一模块标识与第二模块标识相同的情况下,可以确定第二微服务支持被第一微服务调用。其中,内部类型表示微服务支持同一业务模块的任意微服务调用。
例如,第一微服务为微服务a,第一微服务注册地址为/module_x/public/server_a。第二微服务为微服务b,第二微服务注册地址为/module_x/inside/server_b。通过比对可知,第二微服务类型为inside即内部类型,也就是说,第二微服务支持与第二微服务同一子模块的任意微服务调用。且第一模块标识与第二模块标识同为module_x,即第一微服务与第二微服务所属于同一模块。此时,可以确定第二微服务支持被第一微服务调用。
在第二微服务类型为授权类型,且在第二微服务注册地址对应的授权列表中存在第一微服务注册地址的情况下,确定第二微服务支持被第一微服务调用。其中,授权类型表示微服务支持通过授权的微服务调用,第二微服务注册地址对应的授权列表包括授权调用第二微服务的微服务的微服务注册地址。
例如,第一微服务为微服务a,第一微服务注册地址为/module_x/public/server_a。第二微服务为微服务b,第二微服务注册地址为/module_x/auth/server_b。通过比对可知,第二微服务类型为auth即授权类型,也就是说,第二微服务支持通过授权的微服务调用。与此同时,/module_x/auth/server_b对应的授权列表中存在/module_x/public/server_a,即第一服务已通过第二微服务的调用授权。因此,可以确定第二微服务支持被第一微服务调用。
在第二微服务类型和第一微服务类型皆为私有类型,第二微服务类型的名称与第一微服务类型的名称相同,且第一模块标识与第二模块标识相同的情况下,确定第二微服务支持被第一微服务调用。其中,私有类型表示微服务支持同一模块同一范围内的微服务调用。
例如,第一微服务为微服务a,第一微服务注册地址为/module_x/def_x/server_a。第二微服务为微服务b,第二微服务注册地址为/module_x/def_x//server_b。通过比对可知,第一微服务类型和第二微服务类型同为def即私有类型。与此同时,第二微服务类型的名称与第一微服务类型的名称同为def_x,且第一模块标识与第二模块标识同为module_x,即第一微服务与第二微服务属于同一模块的同一范围。因此,可以确定第二微服务支持被第一微服务调用。
如此可以通过比对第一微服务注册地址和第二微服务注册地址,确定第二微服务是否允许被第一微服务调用,进而实现微服务调用的安全控制。
S230,在第二微服务支持被第一微服务调用的情况下,根据第二微服务标识,调用第二微服务。
在一个实施例中,在第二微服务支持被第一微服务调用的情况下,可以从第二微服务注册地址中提取第二微服务标识,根据第二微服务标识,确定部署第二微服务的至少一个服务器,即第二微服务标识对应的至少一个服务器,然后根据负载均衡算法,从至少一个服务器中确定用于调用第二微服务的目标服务器,进而从目标服务器中调用第二微服务。如此可以通过负载均衡,确定最优的服务器执行微服务调用,提高调用效率与资源利用率。
例如,第一微服务为微服务a,第一微服务注册地址为/module_x/public/server_a。第二微服务为微服务b,第二微服务注册地址为/module_x/public/server_b,微服务b部属于服务器1和服务器2,服务器1的地址为IP_1:portal/server_b,服务器2的地址为IP_2:portal/server_b。可知,微服务a调用被微服务b时,微服务b支持被微服务a调用,可以从/module_x/public/server_b提取server_b,也可以视为将/module_x/public/server_b转换为server_b。根据负载均衡算法,确定目标服务器为服务器2,根据服务器2的地址即IP_2:portal/server_b访问服务器2,从服务器2调用微服务b。
在本申请实施例中,可以基于申请微服务调用的微服务与被调用的微服务的微服务注册地址,快速确定本次微服务调用是否可行,在可行的情况下,快速调用微服务,无需通过能力开发实现微服务调用,提高了微服务调用效率和安全性,降低后端微服务的压力。
在第一微服务调用第二微服务之前,第一微服务和第二微服务都需要先注册,即在调用微服务之前,微服务调用的双方都需要先注册。在一个实施例中,可以获取目标微服务的微服务注册请求。其中,目标微服务为需要注册的微服务,微服务注册请求包括至少一个业务模块中目标微服务所属业务模块的第三模块标识,目标微服务的第三微服务类型和第三微服务标识。响应于微服务注册请求,对目标微服务进行注册,得到目标微服务的第三微服务注册地址。其中,第三微服务注册地址包括第三模块标识、第三微服务类型和第三微服务标识。
例如,微服务c的微服务注册请求包括module_x、public和server_c,其中,第三模块标识为module_x,第三微服务类型为public即公共类型,第三微服务标识为server_c。对微服务c进行注册,得到微服务c的第三微服务注册地址为/module_x/public/server_c。
微服务c的微服务注册请求包括module_x、inside和server_c,其中,第三微服务类型为inside即内部类型。对微服务c进行注册,得到微服务c的第三微服务注册地址为/module_x/inside/server_c。
微服务c的微服务注册请求包括module_x、auth和server_c,其中,第三微服务类型为auth即授权类型。对微服务c进行注册,得到微服务c的第三微服务注册地址为/module_x/auth/server_c。
微服务c的微服务注册请求包括module_x、def_x和server_c,其中,第三微服务类型为def即私有类型,且名称为def_x。对微服务c进行注册,得到微服务c的第三微服务注册地址为/module_x/def_x/server_c。
示例性地,在目标微服务的第三微服务类型为授权类型的情况下,需要配置目标微服务的授权列表,其中,该授权列表与目标微服务的第三微服务注册地址对应,包括授权调用目标微服务的微服务的微服务注册地址。具体地,可以通过人工指定某个业务模块的所有微服务可以访问目标微服务,某个业务模块的所有微服务可以访问目标微服务所属业务模块的所有微服务,某个微服务可以访问目标微服务等等,在此不做限制。
下面可以结合一个具体的实施例,对本申请实施例提供的微服务调用方法进行详细介绍,具体如下:
如图3所示,电子设备110可以包括配置模块111、安全服务注册模块112、安全控制网关模块113、服务授权控制模块114、安全服务路由模块115。
用户可以通过配置模块111配置安全服务注册地址和服务授权控制地址。在目标微服务即待注册的微服务注册时,部署目标微服务的服务器可以先从配置模块111获取安全服务注册地址和服务授权控制地址等基本信息。然后将微服务注册请求发送至安全服务注册地址对应的安全服务注册模块112。
安全服务注册模块112可以根据微服务注册请求对目标微服务进行注册,得到目标微服务的第三微服务注册地址。在第三微服务类型为授权类型的情况下,安全服务注册模块112将第三微服务注册地址同步至服务授权控制地址对应的服务授权控制模块114。
用户可以通过服务授权控制模块114配置并存储目标微服务的授权列表。其中,目标微服务的授权列表与第三微服务注册地址对应。
在已注册的第一微服务调用已注册的第二微服务时,部署第一微服务的服务器可以向安全控制网关模块113发送第一微服务调用第二微服务的调用请求。
安全控制网关模块113可以根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用。例如,在第二微服务类型为授权类型时,可以从服务授权控制模块114获取第二微服务注册地址对应的授权列表,在授权列表中存在第一微服务注册地址的情况下,确定第二微服务支持被第一微服务调用。在第二微服务支持被第一微服务调用的情况下,向安全服务路由模块115发送调用请求。
安全服务路由模块115可以从第二微服务注册地址中提取第二微服务标识,也即将第二微服务注册地址转换为第二微服务标识即第二微服务的真实地址,并根据第二微服务标识,确定部署第二微服务的至少一个服务器,然后根据负载均衡算法,从至少一个服务器中确定目标服务器,进而根据目标服务器的地址,访问目标服务器,从目标服务器中调用第二微服务。
基于本申请实施例的提供的微服务调用方法,本申请实施例还提供了一种微服务调用装置,如图4所示,微服务调用装置400可以包括:
获取模块410,用于获取目标系统中第一微服务调用第二微服务的调用请求,其中,目标系统包括至少一个业务模块,调用请求包括第一微服务的第一微服务注册地址,以及第二微服务的第二微服务注册地址,第一微服务注册地址包括至少一个业务模块中第一微服务所属业务模块的第一模块标识、第一微服务的第一微服务类型和第一微服务标识,第二微服务注册地址包括至少一个业务模块中第二微服务所属业务模块的第二模块标识、第二微服务的第二微服务类型和第二微服务标识。
确定模块420,用于根据第一微服务注册地址和第二微服务注册地址,确定第二微服务是否支持被第一微服务调用。
调用模块430,用于在第二微服务支持被第一微服务调用的情况下,根据第二微服务标识,调用第二微服务。
在一个实施例中,确定模块420具体用于:
在第二微服务类型为公共类型的情况下,确定第二微服务支持被第一微服务调用。
在一个实施例中,确定模块420具体用于:
在第二微服务类型为内部类型,且第一模块标识与第二模块标识相同的情况下,确定第二微服务支持被第一微服务调用。
在一个实施例中,确定模块420具体用于:
在第二微服务类型为授权类型,且在第二微服务标识对应的授权列表中存在第一微服务注册地址的情况下,确定第二微服务支持被第一微服务调用。
在一个实施例中,确定模块420具体用于:
在第二微服务类型和第一微服务类型皆为私有类型,第二微服务类型的名称与第一微服务类型的名称相同,且第一模块标识与第二模块标识相同的情况下,确定第二微服务支持被第一微服务调用。
在一个实施例中,调用模块430具体用于:
根据第二微服务标识,确定部署第二微服务的至少一个服务器。
根据负载均衡算法,从至少一个服务器中确定用于调用第二微服务的目标服务器。
从目标服务器中调用第二微服务。
在一个实施例中,获取模块410,还用于获取目标微服务的微服务注册请求,其中,微服务注册请求包括至少一个业务模块中目标微服务所属业务模块的第三模块标识,目标微服务的第三微服务类型和第三微服务标识。
微服务调用装置400还可以包括:
注册模块,用于响应于微服务注册请求,对目标微服务进行注册,得到目标微服务的第三微服务注册地址,其中,第三微服务注册地址包括第三模块标识、第三微服务类型和第三微服务标识。
可以理解的是,图4所示微服务调用装置400中的各个模块/单元具有实现本申请实施例提供的微服务调用方法中的各个步骤的功能,并能达到其相应的技术效果,为了简洁,在此不再赘述。
图5是本申请实施例提供的一种微服务调用设备的结构示意图。如图5所示,该确定设备可以包括处理器501以及存储有计算机程序指令的存储器502。
具体地,上述处理器501可以包括中央处理器(Central Processing Unit,CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器502可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器502可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器502可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器502可在确定设备的内部或外部。在特定实施例中,存储器502是非易失性固态存储器。在特定实施例中,存储器502包括只读存储器(Read Only Memory image,ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器501通过读取并执行存储器502中存储的计算机程序指令,可以实现本申请实施例提供的微服务调用方法,并达到本申请实施例执行其方法达到的相应技术效果,为简洁描述,在此不再赘述。
在一个示例中,该确定设备还可包括通信接口503和总线510。其中,如图5所示,处理器501、存储器502、通信接口503通过总线510连接并完成相互间的通信。
通信接口503,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。
总线510包括硬件、软件或两者,将确定设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(Accelerated Graphics Port,AGP)或其他图形总线、增强工业标准架构(Extended Industry Standard Architecture,EISA)总线、前端总线(Front Side Bus,FSB)、超传输(Hyper Transport,HT)互连、工业标准架构(IndustryStandard Architecture,ISA)总线、无限带宽互连、低引脚数(Low Pin Count,LPC)总线、存储器总线、微信道架构(Micro Channel Architecture,MCA)总线、外围组件互连(Peripheral Component Interconnect,PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件((Serial Advanced Technology Attachment,SATA)总线、视频电子标准协会局部(VESA Local Bus,VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线510可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
该确定设备可以执行本申请实施例中的微服务调用方法,从而实现本申请实施例提供的微服务调用方法的相应技术效果。
另外,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本申请实施例提供的微服务调用方法。
需要明确的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,为了简洁,不再赘述。本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、ASIC、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、EROM、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(Radio Frequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

Claims (10)

1.一种微服务调用方法,其特征在于,所述方法包括:
获取目标系统中第一微服务调用第二微服务的调用请求,其中,所述目标系统包括至少一个业务模块,所述调用请求包括所述第一微服务的第一微服务注册地址,以及所述第二微服务的第二微服务注册地址,所述第一微服务注册地址包括所述至少一个业务模块中所述第一微服务所属业务模块的第一模块标识、所述第一微服务的第一微服务类型和第一微服务标识,所述第二微服务注册地址包括所述至少一个业务模块中所述第二微服务所属业务模块的第二模块标识、所述第二微服务的第二微服务类型和第二微服务标识;
根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用;
在所述第二微服务支持被所述第一微服务调用的情况下,根据所述第二微服务标识,调用所述第二微服务。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用,包括:
在所述第二微服务类型为公共类型的情况下,确定所述第二微服务支持被所述第一微服务调用。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用,包括:
在所述第二微服务类型为内部类型,且所述第一模块标识与所述第二模块标识相同的情况下,确定所述第二微服务支持被所述第一微服务调用。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用,包括:
在所述第二微服务类型为授权类型,且在所述第二微服务注册地址对应的授权列表中存在所述第一微服务注册地址的情况下,确定所述第二微服务支持被所述第一微服务调用。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用,包括:
在所述第二微服务类型和所述第一微服务类型皆为私有类型,所述第二微服务类型的名称与所述第一微服务类型的名称相同,且所述第一模块标识与所述第二模块标识相同的情况下,确定所述第二微服务支持被所述第一微服务调用。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述根据所述第二微服务标识,调用所述第二微服务,包括:
根据所述第二微服务标识,确定部署所述第二微服务的至少一个服务器;
根据负载均衡算法,从所述至少一个服务器中确定用于调用所述第二微服务的目标服务器;
从所述目标服务器中调用所述第二微服务。
7.根据权利要求1-5任意一项所述的方法,其特征在于,所述方法还包括:
获取目标微服务的微服务注册请求,其中,所述微服务注册请求包括所述至少一个业务模块中所述目标微服务所属业务模块的第三模块标识,所述目标微服务的第三微服务类型和第三微服务标识;
响应于所述微服务注册请求,对所述目标微服务进行注册,得到目标微服务的第三微服务注册地址,其中,所述第三微服务注册地址包括所述第三模块标识、所述第三微服务类型和所述第三微服务标识。
8.一种微服务调用装置,其特征在于,所述装置包括:
获取模块,用于获取目标系统中第一微服务调用第二微服务的调用请求,其中,所述目标系统包括至少一个业务模块,所述调用请求包括所述第一微服务的第一微服务注册地址,以及所述第二微服务的第二微服务注册地址,所述第一微服务注册地址包括所述至少一个业务模块中所述第一微服务所属业务模块的第一模块标识、所述第一微服务的第一微服务类型和第一微服务标识,所述第二微服务注册地址包括所述至少一个业务模块中所述第二微服务所属业务模块的第二模块标识、所述第二微服务的第二微服务类型和第二微服务标识;
确定模块,用于根据所述第一微服务注册地址和所述第二微服务注册地址,确定所述第二微服务是否支持被所述第一微服务调用;
调用模块,用于在所述第二微服务支持被所述第一微服务调用的情况下,根据所述第二微服务标识,调用所述第二微服务。
9.一种微服务调用设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-7任意一项所述的微服务调用方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-7任意一项所述的微服务调用方法。
CN202110688050.3A 2021-06-21 2021-06-21 微服务调用方法、装置、设备及存储介质 Pending CN115509628A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110688050.3A CN115509628A (zh) 2021-06-21 2021-06-21 微服务调用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110688050.3A CN115509628A (zh) 2021-06-21 2021-06-21 微服务调用方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115509628A true CN115509628A (zh) 2022-12-23

Family

ID=84499266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110688050.3A Pending CN115509628A (zh) 2021-06-21 2021-06-21 微服务调用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115509628A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501383A (zh) * 2023-06-26 2023-07-28 亚信科技(中国)有限公司 微服务的分配方法、装置、电子设备及可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501383A (zh) * 2023-06-26 2023-07-28 亚信科技(中国)有限公司 微服务的分配方法、装置、电子设备及可读存储介质
CN116501383B (zh) * 2023-06-26 2023-08-22 亚信科技(中国)有限公司 微服务的分配方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
EP3304465B1 (en) Nfc-enabled devices for performing secure contactless transactions and using hce
CN105338515B (zh) 数据业务传输方法和移动通信设备
KR101984679B1 (ko) 데이터 전송 중에 검증을 구현하기 위한 시스템 및 방법
CN114257440B (zh) 网络功能服务发现方法、系统以及存储介质
US20230186257A1 (en) Payment method, gateway device, server and storage medium
CN106713315A (zh) 插件应用程序的登录方法和装置
CN115509628A (zh) 微服务调用方法、装置、设备及存储介质
CN115801299A (zh) 元宇宙身份认证方法、装置、设备及存储介质
CN114385386A (zh) 微服务调用方法、装置、设备及存储介质
CN110674481A (zh) 一种应用程序的账号注册方法、装置、设备和存储介质
CN113742235A (zh) 一种校验代码的方法和装置
CN115362700A (zh) 用于管理智能安全平台的事件的方法和装置
CN109699030B (zh) 无人机认证方法、装置、设备和计算机可读存储介质
JP7430733B2 (ja) オーソリゼーション装置
CN110784551A (zh) 基于多租户的数据处理方法、装置、设备和介质
CN115829572A (zh) 跨链数据交互方法、装置、设备、介质及产品
CN115858320A (zh) 操作日志记录方法、装置、介质及产品
CN108235228B (zh) 一种安全校验方法和装置
CN115333753A (zh) 互联网协议地址生成方法、装置、存储介质与电子设备
CN115004634B (zh) 信息处理方法、装置、设备及存储介质
CN113079514A (zh) 一种入网校验方法、装置及计算机可读存储介质
CN112379967A (zh) 模拟器检测方法、装置、设备及介质
CN114710830B (zh) 一种网络注册方法及相关装置
WO2024040842A1 (zh) 信息查验方法、装置、设备、介质及产品
CN111383025B (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