CN112995324A - 服务调用方法、装置、计算机可读介质以及设备 - Google Patents

服务调用方法、装置、计算机可读介质以及设备 Download PDF

Info

Publication number
CN112995324A
CN112995324A CN202110260605.4A CN202110260605A CN112995324A CN 112995324 A CN112995324 A CN 112995324A CN 202110260605 A CN202110260605 A CN 202110260605A CN 112995324 A CN112995324 A CN 112995324A
Authority
CN
China
Prior art keywords
service
request
target java
calling
http 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
Application number
CN202110260605.4A
Other languages
English (en)
Other versions
CN112995324B (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 Travelsky Holding Co
Original Assignee
China Travelsky Holding Co
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 Travelsky Holding Co filed Critical China Travelsky Holding Co
Priority to CN202110260605.4A priority Critical patent/CN112995324B/zh
Publication of CN112995324A publication Critical patent/CN112995324A/zh
Application granted granted Critical
Publication of CN112995324B publication Critical patent/CN112995324B/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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • 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

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)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种服务调用方法、装置、计算机可读介质以及设备,该方法通过API网关接收Python应用发送的超文本传输协议HTTP请求;将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用所述目标Java服务;接收所述代理转发组件发送的所述目标Java服务对应的返回调用结果;将所述目标Java服务对应的返回调用结果返回至所述Python应用。由于本申请中的代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,API网关将HTTP请求发送至代理转发组件后可直接由代理转发组件调用目标Java服务,不需要执行启动和调用Java虚拟机的流程,减少了系统资源的消耗,进而可满足处理大量的Java服务调用需求。

Description

服务调用方法、装置、计算机可读介质以及设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种服务调用方法、装置、计算机可读介质以及设备。
背景技术
Java与Python是当前应用较为广泛的编程语言,由于Java与Python语言被广泛应用于信息系统的各个领域,因此跨系统、跨语言的服务相互调用的场景也非常普遍。现有技术中,Python调用Java服务主要通过调用Java虚拟机的方式实现。具体的,Python调用Java服务的过程为:Python应用开启Java虚拟机,对Java虚拟机进行调用,使Java虚拟机加载需要的类,调用类中对应的Java方法,实现调用Java服务。
然而,现有的Python调用Java服务的过程中,每一次调用Java服务都需要启动和调用Java虚拟机,对系统资源造成了极大的消耗,无法满足处理大量的Java服务调用需求。
发明内容
基于上述现有技术的不足,本申请提出了一种服务调用方法、装置、计算机可读介质以及设备,以实现减少Python应用调用Java服务过程中对系统资源造成的消耗。
本申请第一方面公开了一种服务调用方法,应用于应用程序接口API网关,所述服务调用方法包括:
接收Python应用发送的超文本传输协议HTTP请求;其中,所述HTTP请求用于所述Python应用请求调用目标Java服务;
将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用所述目标Java服务;其中,所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器;所述微服务请求参数为用于说明所述目标Java服务的参数;
接收所述代理转发组件发送的所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
将所述目标Java服务对应的返回调用结果返回至所述Python应用。
可选地,在上述服务调用方法中,所述将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用所述目标Java服务,包括:
将所述HTTP请求发送至负载均衡组件,由所述负载均衡组件通过轮询分配方式,将所述HTTP请求转发至轮询到的代理转发组件。
可选地,在上述服务调用方法中,所述将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用HTTP请求所述目标Java服务之前,还包括:
对所述HTTP请求进行鉴权;其中,若所述HTTP请求鉴权通过,则执行将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用所述目标Java服务步骤。
可选地,在上述服务调用方法中,所述对所述HTTP请求进行鉴权,包括:
查看所述HTTP请求中是否具有所述Python应用的应用标识和所述Python应用的认证信息;
若所述HTTP请求中具有所述Python应用的应用标识和所述Python应用的认证信息,则查看数据库中是否存在所述Python应用的应用标识和所述Python应用的认证信息;其中,若查看出所述数据库中存在所述Python应用的应用标识和所述Python应用的认证信息,则所述HTTP请求鉴权通过。
本申请第二方面公开了一种服务调用方法,应用于代理转发组件,其中所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,所述服务调用方法包括:
接收HTTP请求;其中,所述HTTP请求用于Python应用请求调用目标Java服务;
从所述HTTP请求中提取出微服务请求参数;其中,所述微服务请求参数为用于说明所述目标Java服务的参数;
利用提取出的所述微服务请求参数,调用所述目标Java服务;
获取所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
将所述目标Java服务对应的返回调用结果返回至API网关,由所述API网关将所述目标Java服务对应的返回调用结果返回至所述Python应用。
可选地,在上述服务调用方法中,所述利用提取出的所述微服务请求参数,调用所述目标Java服务,包括:
利用提取出的所述微服务请求参数,判断所述目标Java服务是否为远程过程调用RPC服务;
若所述目标Java服务为RPC服务,则利用所述微服务请求参数从云平台调用所述目标Java服务;
若所述目标Java服务不为RPC服务,则利用所述微服务请求参数在本地调用所述目标Java服务。
可选地,在上述服务调用方法中,所述从所述HTTP请求中提取出微服务请求参数之前,还包括:
验证所述HTTP请求的通用请求参数是否正确;其中,若验证出所述HTTP请求的通用请求参数正确,则执行所述从所述HTTP请求中提取出微服务请求参数步骤。
可选地,在上述服务调用方法中,所述若所述目标Java服务为RPC服务,则利用所述微服务请求参数从云平台调用所述目标Java服务,包括:
若所述目标Java服务为RPC服务,则利用所述微服务请求参数,通过云平台的RPC服务代理装置从云平台调用所述目标Java服务。
本申请第三方面公开了一种服务调用装置,应用于API网关,所述服务调用装置包括:
第一接收单元,用于接收Python应用发送的超文本传输协议HTTP请求;其中,所述HTTP请求用于所述Python应用请求调用目标Java服务;
第一发送单元,用于将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用所述目标Java服务;其中,所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器;所述微服务请求参数为用于说明所述目标Java服务的参数;
第二接收单元,用于接收所述代理转发组件发送的所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
第一返回单元,用于将所述目标Java服务对应的返回调用结果返回至所述Python应用。
可选地,在上述服务调用装置中,所述第一发送单元,包括:
分配子单元,用于将所述HTTP请求发送至负载均衡组件,由所述负载均衡组件通过轮询分配方式,将所述HTTP请求转发至轮询到的代理转发组件。
可选地,在上述服务调用装置中,还包括:
鉴权单元,用于对所述HTTP请求进行鉴权;其中,若所述HTTP请求鉴权通过,则所述第一发送单元执行将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用所述目标Java服务。
可选地,在上述服务调用装置中,所述鉴权单元,包括:
第一查看单元,用于查看所述HTTP请求中是否具有所述Python应用的应用标识和所述Python应用的认证信息;
第二查看单元,用于若所述HTTP请求中具有所述Python应用的应用标识和所述Python应用的认证信息,则查看数据库中是否存在所述Python应用的应用标识和所述Python应用的认证信息;其中,若查看出所述数据库中存在所述Python应用的应用标识和所述Python应用的认证信息,则所述HTTP请求鉴权通过。
本申请第四方面公开了一种服务调用装置,应用于代理转发组件,其中所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,所述服务调用装置包括:
第三接收单元,用于接收HTTP请求;其中,所述HTTP请求用于Python应用请求调用目标Java服务;
第一提取单元,用于从所述HTTP请求中提取出微服务请求参数;其中,所述微服务请求参数为用于说明所述目标Java服务的参数;
第一调用单元,用于利用提取出的所述微服务请求参数,调用所述目标Java服务;
获取单元,用于获取所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
第二返回单元,用于将所述目标Java服务对应的返回调用结果返回至API网关,由所述API网关将所述目标Java服务对应的返回调用结果返回至所述Python应用。
可选地,在上述服务调用装置中,所述第一调用单元,包括:
判断子单元,用于利用提取出的所述微服务请求参数,判断所述目标Java服务是否为远程过程调用RPC服务;
第一调用子单元,用于若所述目标Java服务为RPC服务,则利用所述微服务请求参数从云平台调用所述目标Java服务;
第二调用子单元,用于若所述目标Java服务不为RPC服务,则利用所述微服务请求参数在本地调用所述目标Java服务。
可选地,在上述服务调用装置中,还包括:
验证单元,用于验证所述HTTP请求的通用请求参数是否正确;其中,若验证出所述HTTP请求的通用请求参数正确,则所述第一提取单元执行从所述HTTP请求中提取出微服务请求参数。
可选地,在上述服务调用装置中,所述第一调用子单元,包括:
第三调用子单元,用于若所述目标Java服务为RPC服务,则利用所述微服务请求参数,通过云平台的RPC服务代理装置从云平台调用所述目标Java服务。
本申请第五方面公开了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述第一方面中任一所述的方法,或者,如上述第二方面中任一所述的方法。
本申请第六方面公开了一种设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述第一方面中任一所述的方法,或者,如上述第二方面中任一所述的方法。
从上述技术方案可以看出,本申请实施例提出的服务调用方法,应用于API网关,该服务调用方法接收Python应用发送的HTTP请求,其中HTTP请求用于Python应用请求调用目标Java服务。将HTTP请求发送至代理转发组件,由代理转发组件从HTTP请求中提取出微服务请求参数,利用提取出的微服务请求参数调用目标Java服务。接收代理转发组件发送的目标Java服务对应的返回调用结果,将目标Java服务对应的返回调用结果返回至Python应用。由于本申请中的代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,因此相较于现有的通过Java虚拟机调用目标Java服务的方式,本申请中API网关将HTTP请求发送至代理转发组件后可直接由代理转发组件调用目标Java服务,不需要执行启动和调用Java虚拟机的流程,减少了系统资源的消耗,进而可满足处理大量的Java服务调用需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种服务调用方法的流程示意图;
图2为本申请实施例提出的一种HTTP请求鉴权方法的流程示意图;
图3为本申请实施例提出的一种服务调用装置的结构示意图;
图4为本申请实施例提出的另一种服务调用装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,本申请实施例公开了一种服务调用方法,包括以下步骤:
S101、Python应用发送超文本传输协议(Hypertext Transfer Protocol,HTTP)请求至应用程序接口(Application Programming Interface,API)网关。
其中,HTTP请求用于Python应用请求调用目标Java服务。目标Java服务是Python应用当前所需使用的Java服务。Python应用所在的设备端获取客户的HTTP请求后,将HTTP请求发送至API网关。
HTTP请求内携带有用于说明目标Java服务的参数,以便通过HTTP请求可知Python应用所请求的是哪一个目标Java服务。用于说明目标Java服务的参数可以是目标Java服务的标识信息,例如目标Java服务的服务名、目标Java服务的实际应用请求等。
可选地,HTTP请求还可以携带有Python应用的标识信息,以便成功调用目标Java服务后可将调用目标Java服务后的返回数据返回至Python应用。
可选地,在本申请一具体实施例中,Python应用执行步骤S101之前,还包括:
Python应用从API网关获取Python应用的应用标识和Python应用的认证信息,将Python应用的应用标识和Python应用的认证信息携带至HTTP请求中,将携带有Python应用的应用标识和Python应用的认证信息的HTTP请求发送至API网关。
其中,Python应用的应用标识和Python应用的认证信息构成API网关验证Python应用的身份的信息。具体的,Python应用向API网关请求API网关授予为Python应用转发HTTP请求的权限。若API网关响应Python应用的权限请求,则API网关会向Python应用分配Python应用的应用标识以及Python应用的应用标识对应的Python应用的认证信息。并将Python应用的应用标识和Python应用的认证信息返回给Python应用。同时,API网关也将Python应用的应用标识和Python应用的认证信息进行存储,以便后续对Python应用发送的HTTP请求进行身份验证鉴权。
Python应用从API网关获取Python应用的应用标识和Python应用的认证信息后,将Python应用的应用标识、Python应用的认证信息以及请求调用目标Java服务时所需要的参数一起组成HTTP请求的主体部分,将携带了Python应用的应用标识和Python应用的认证信息的HTTP请求发送给API网关。
S102、API网关将HTTP请求发送至代理转发组件。
其中,代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器。代理转发组件具有一键启动web服务、提供HTTP接口等功能,进而能够实现Python应用调用目标Java服务的目的。且代理转发组件不同于现有技术中使用过的Java虚拟机,不需要进行开启调用虚拟机的操作,进而减少了处理HTTP请求过程中的系统资源消耗,相较于现有的通过Java虚拟机实现目标Java服务调用的方式,更为便捷。
API网关通过HTTP接口或者超文本传输安全协议(Hyper Text TransferProtocol over Secure Socket Layer,HTTPS)接口接收Python应用的HTTP请求。API网关中具有Python内置模块,可对Python发送的HTTP请求进行解析。
可选地,API网关可以具有一个开源的pythonWeb应用框架,根据配置对HTTP请求进行清洗,然后将清洗出来的HTTP请求的各项参数拼接成JS对象简谱(JavaScript ObjectNotation,JSON)格式,发送至代理转发组件。
可选地,在本申请一具体实施例中,执行步骤S102的一种实施方式,包括:
API网关将HTTP请求发送至负载均衡组件,由负载均衡组件通过轮询分配方式,将HTTP请求转发至轮询到的代理转发组件。
在API网关需要发送的HTTP请求数量较多的情况下,可以采用把HTTP请求发送给负载均衡组件,由负载均衡组件对多个HTTP请求进行负载均衡处理,平均分配到多个代理转发组件中,使得系统资源不会因HTTP请求数量过多而发生处理故障,提高HTTP请求处理的可靠性。
具体的,负载均衡组件收到API网关发送的HTTP请求后,使用轮询分配的方式,将HTTP请求转发到轮询到的代理转发组件,实现均衡分配多个HTTP请求。当某个代理转发组件出现故障时,则自动将该代理转发组件移除轮询分配列表,以保证代理转发组件能够处理HTTP请求。
可选地,负载均衡组件可以是一个高性能的HTTP和反向代理web服务器。负载均衡组件收到API网关发送的HTTP请求之后,通过轮询分配的方式将HTTP请求转发到代理转发组件,即每个HTTP请求按照时间顺序轮流分配到不同的代理转发组件,如果某个代理转发组件故障,可自动剔除。
可选地,在本申请一具体实施例中,执行步骤S102之前,还包括:
API网关对HTTP请求进行鉴权。
其中,若HTTP请求鉴权通过,则API网关执行步骤S102。若HTTP请求鉴权不通过,则不执行步骤S102,可结束处理。可选地,若HTTP请求鉴权不通过,则可以将用于说明HTTP请求鉴权不通过的信息返回至Python应用。Python应用可根据API返回的信息重新发送正确的HTTP请求。其中,对HTTP请求进行鉴权指的是鉴定发送HTTP请求的Python应用是否具有让API网关转发HTTP请求的权限。
可选地,参阅图2,在本申请一具体实施例中,API网关对HTTP请求进行鉴权的一种实施方式,包括:
S201、查看HTTP请求中是否具有Python应用的应用标识和Python应用的认证信息。
若HTTP请求中同时具有Python应用的应用标识和Python应用的认证信息,则执行步骤S202。若HTTP请求中没有同时具有Python应用的应用标识和Python应用的认证信息,则认为HTTP请求鉴权不通过,结束流程。
为了提高安全性,API网关仅处理具有权限的Python应用所发送的HTTP请求。如果HTTP请求中没有同时具有Python应用的应用标识和Python应用的认证信息,则说明HTTP请求的格式不符合要求,HTTP请求鉴权不通过,API网关不进行处理。可选地,如果HTTP请求中没有同时具有Python应用的应用标识和Python应用的认证信息,则可以返回用于说明HTTP请求认证失败的信息至Python应用。
如果HTTP请求中同时具有Python应用的应用标识和Python应用的认证信息,则说明API网关接收到的HTTP请求符合要求,需要进一步鉴定发送HTTP请求的Python应用是否具有权限,即执行步骤S202。
S202、查看数据库中是否存在HTTP请求中的Python应用的应用标识和Python应用的认证信息。
API网关在数据库中预存有API权限表,API权限表内关联存储了Python应用的应用标识、认证信息以及对应权限。若查看数据库中存在有HTTP请求中的Python应用的应用标识和Python应用的认证信息,则确定出HTTP请求鉴权通过。若查看数据库中不存在有HTTP请求中的Python应用的应用标识和Python应用的认证信息,则确定出HTTP请求鉴权不通过。
具体的,若数据库中存储有HTTP请求中的Python应用的应用标识,则需查看数据库中存储的Python应用的应用标识所对应的认证信息是否与HTTP请求中的认证信息一致,若一致,则说明数据库中存在HTTP请求中的Python应用的应用标识和Python应用的认证信息。若不一致,则认为数据库中不存在HTTP请求中的Python应用的应用标识和Python应用的认证信息。
可选地,为了防止API网关遭受跨站请求伪造攻击,API网关在执行图3示出的流程之前,还可以在接收到HTTP请求后,可以先判断HTTP请求中的引用来源字段是否与配置的相同,若相同,再取到HTTP请求里的主体部分,对其进行JSON格式校验。然后API网关再执行图3示出的步骤,即对HTTP请求进行鉴权。
S103、代理转发组件从HTTP请求中提取出微服务请求参数。
其中,微服务请求参数为用于说明目标Java服务的参数。通过微服务请求参数可调用到目标Java服务。代理转发组件对HTTP请求进行解析之后,即可从中提取出微服务请求参数。
可选地,微服务请求参数可以包括有:目标Java服务的服务组、目标Java服务的项目名称、目标Java服务的服务名以及目标Java服务的实际应用请求。
可选地,在本申请一具体实施例中,执行步骤S103之前,还包括:
验证HTTP请求的通用请求参数是否正确。
其中,通用请求参数为HTTP请求所需用到的参数。验证HTTP请求的通用参数是否正确可以指的是HTTP请求中的通用请求参数是否填写正确。具体可以根据预设的通用请求参数填写规则,来判断通用请求参数是否填写正确。例如可以设置通用请求参数填写规则为目标Java服务的服务名不能为空,Python应用的应用标识和认证信息不能为空等等。
若验证出HTTP请求的通用请求参数正确,则执行步骤S103。若验证出HTTP请求的通用请求参数,则可以直接结束流程,也可以返回用于说明HTTP请求的通用请求参数填写不正确的信息至Python应用。
S104、代理转发组件利用提取出的微服务请求参数,调用目标Java服务。
微服务请求参数为用于说明目标Java服务的参数。微服务请求参数可以包括有:目标Java服务的服务组、目标Java服务的项目名称、目标Java服务的服务名以及目标Java服务的实际应用请求这类描述目标Java服务的参数。
代理转发组件将微服务请求参数进行传参,调用目标Java服务,如果调用成功。其中,代理转发组件可以在本地调用目标Java服务,也可以从云平台调用目标Java服务,具体根据目标Java服务的服务类型来决定具体的调用方式。
可选地,在本申请一具体实施例中,执行步骤S104的一种实施方式,包括:
利用提取出的微服务请求参数,判断目标Java服务是否为远程过程调用(RemoteProcedure Call,RPC)服务,若目标Java服务为RPC服务,则利用微服务请求参数从云平台调用目标Java服务,若目标Java服务不为RPC服务,则利用微服务请求参数在本地调用目标Java服务。
如果目标Java服务不为RPC服务,则说明目标Java服务可在本地调用到,代理转发组件通过微服务请求参数找到本地对应的Java归档(JavaArchive,Jar)包中的Java方法,进行调用。如果代理转发组件判断出目标Java服务是RPC服务,则需要通过RPC远程调用的方式从云平台调用目标Java服务。
可选地,在本申请一具体实施例中,若目标Java服务为RPC服务,则从云平台调用目标Java服务的一种实施方式,包括:
若目标Java服务为RPC服务,则通过云平台的RPC服务代理装置从云平台调用目标Java服务。
具体的,由于目标Java服务为RPC服务,需要进行RPC远程调用,因此代理转发组件需要利用微服务请求参数先创建消费者上下文,当消费者需要消费时,则通过云平台的RPC服务代理装置从云平台调用目标Java服务。
S105、代理转发组件获取目标Java服务对应的返回调用结果。
其中,返回调用结果,包括:用于说明目标Java服务是否成功调用的调用结果和目标Java服务对应的返回数据。若目标Java服务成功调用,即HTTP请求已成功,则目标Java服务对应的返回数据中就会有目标Java服务所提供的具体服务信息。若目标Java服务没有成功调用,则目标Java服务对应的返回数据中不会有目标Java服务所提供的具体服务信息。
可选地,目标Java服务对应的返回数据中还包括有返回码,用于应用判断调用结果,以及返回码对应的信息提示。通过目标Java服务对应的返回数据还可以知道目标Java服务调用失败的原因。
S106、代理转发组件将目标Java服务对应的返回调用结果返回至API网关。
S107、API网关将目标Java服务对应的返回调用结果返回至Python应用。
API网关成功接收到目标Java服务对应的返回调用结果后,从目标Java服务对应的返回调用结果可以知道该目标Java服务对应的返回调用结果与哪一个Python应用的HTTP请求相对应,进而可将目标Java服务对应的返回调用结果返回给对应的Python应用。
可选地,在本申请一具体实施例中,API网关接收到目标Java服务对应的返回调用结果之后,还可以根据目标Java服务对应的返回调用结果中的相关字段信息,重新包装成API网关通用的返回结果格式,并将包装处理后的目标Java服务对应的返回调用结果返回至Python应用。
可选地,API网关包装处理后的目标Java服务对应的返回调用结果可以包括以下几个部分:第一、HTTP请求是否成功,其中HTTP请求成功指的是从Python应用来的HTTP请求完整走完了整个传输链路,最后目标Java服务返回了正常的调用结果。第二、返回码。这里的返回码是用于说明目标Java服务的调用结果。例如,返回码为0代表成功调用,500代表内部错误,404代表没有找到目标Java服务等等。三是信息提示,主要是给前端展示或者用户根据这个信息提示字段判断具体原因。四是返回数据,五是这次HTTP请求的回复标识,这是每个HTTP请求的唯一标识,进行日志查询时可以根据此值准确定位到具体某一次HTTP请求。
可选地,在本申请一具体实施例中,执行图1示出的实施例的过程中,API网关和/或代理转发组件本地可记录目标Java服务调用的相关日志信息。
本申请实施例提出的服务调用方法,Python应用发送的HTTP请求至API网关,其中HTTP请求用于Python应用请求调用目标Java服务。API网关将HTTP请求发送至代理转发组件,代理转发组件则从HTTP请求中提取出微服务请求参数,利用提取出的微服务请求参数调用目标Java服务。代理转发组件返回目标Java服务对应的返回调用结果至API网关,API网关再将目标Java服务对应的返回调用结果返回至Python应用。由于本申请中的代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,因此相较于现有的通过Java虚拟机调用目标Java服务的方式,本申请中API网关将HTTP请求发送至代理转发组件后可直接由代理转发组件调用目标Java服务,不需要执行启动和调用Java虚拟机的流程,减少了系统资源的消耗,进而可满足处理大量的Java服务调用需求。
参阅图3,基于上述本申请实施例提出的服务调用方法,本申请实施例对应公开了一种服务调用装置300,应用于API网关,该服务调用装置包括:第一接收单元301、第一发送单元302、第二接收单元303以及第一返回单元304。
第一接收单元301,用于接收Python应用发送的HTTP请求。其中,HTTP请求用于Python应用请求调用目标Java服务。
第一发送单元302,用于将HTTP请求发送至代理转发组件,由代理转发组件从HTTP请求中提取出微服务请求参数,利用提取出的微服务请求参数调用目标Java服务。其中,代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,微服务请求参数为用于说明目标Java服务的参数。
可选地,在本申请一具体实施例中,第一发送单元302,包括:
分配子单元,用于将HTTP请求发送至负载均衡组件,由负载均衡组件通过轮询分配方式,将HTTP请求转发至轮询到的代理转发组件。
第二接收单元303,用于接收代理转发组件发送的目标Java服务对应的返回调用结果。其中,目标Java服务对应的返回调用结果,包括:用于说明目标Java服务是否成功调用的调用结果和目标Java服务对应的返回数据。
第一返回单元304,用于将目标Java服务对应的返回调用结果返回至Python应用。
可选地,在本申请一具体实施例中,还包括:
鉴权单元,用于对HTTP请求进行鉴权。其中,若HTTP请求鉴权通过,则第一发送单元302执行将HTTP请求发送至代理转发组件,由代理转发组件从HTTP请求中提取出微服务请求参数,调用目标Java服务。
可选地,在本申请一具体实施例中,鉴权单元,包括:第一查看单元和第二查看单元。
第一查看单元,用于查看HTTP请求中是否具有Python应用的应用标识和Python应用的认证信息。
第二查看单元,用于若HTTP请求中具有Python应用的应用标识和Python应用的认证信息,则查看数据库中是否存在Python应用的应用标识和Python应用的认证信息。其中,若查看出数据库中存在Python应用的应用标识和Python应用的认证信息,则HTTP请求鉴权通过。
上述本申请实施例公开的服务调用装置300中的各个单元具体的原理和执行过程,与上述本申请实施例公开的服务调用方法相同,可参见上述本申请实施例公开的服务调用方法中相应的部分,这里不再进行赘述。
本申请实施例提出的服务调用装置300,应用于API网关,该服务调用装置通过第一接收单元301接收Python应用发送的HTTP请求,其中HTTP请求用于Python应用请求调用目标Java服务。第一发送单元302将HTTP请求发送至代理转发组件,由代理转发组件从HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用目标Java服务。第二接收单元303接收代理转发组件发送的目标Java服务对应的返回调用结果,第一返回单元304将目标Java服务对应的返回调用结果返回至Python应用。由于本申请中的代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,因此相较于现有的通过Java虚拟机调用目标Java服务的方式,本申请中第一发送单元302将HTTP请求发送至代理转发组件后可直接由代理转发组件调用目标Java服务,不需要执行启动和调用Java虚拟机的流程,减少了系统资源的消耗,进而可满足处理大量的Java服务调用需求。
参阅图4,基于上述本申请实施例提出的服务调用方法,本申请实施例对应公开了一种服务调用装置400,应用于代理转发组件,其中代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,该服务调用装置包括:第三接收单元401、第一提取单元402、第一调用单元403、获取单元404以及第二返回单元405。
第三接收单元401,用于接收HTTP请求。其中,HTTP请求用于Python应用请求调用目标Java服务。
第一提取单元402,用于从HTTP请求中提取出微服务请求参数。其中,微服务请求参数为用于说明目标Java服务的参数。
第一调用单元403,用于利用提取出的微服务请求参数,调用目标Java服务。
可选地,在本申请一具体实施例中,第一调用单元403,包括:判断子单元、第一调用子单元以及第二调用子单元。
判断子单元,用于利用提取出的微服务请求参数,判断目标Java服务是否为远程过程调用RPC服务。
第一调用子单元,用于若目标Java服务为RPC服务,则利用微服务请求参数从云平台调用目标Java服务。
可选地,在本申请一具体实施例中,第一调用子单元,包括:
第三调用子单元,用于若目标Java服务为RPC服务,则利用微服务请求参数通过云平台的RPC服务代理装置从云平台调用目标Java服务。
第二调用子单元,用于若目标Java服务不为RPC服务,则利用微服务请求参数在本地调用目标Java服务。
获取单元404,用于获取目标Java服务对应的返回调用结果。其中,目标Java服务对应的返回调用结果,包括:用于说明目标Java服务是否成功调用的调用结果和目标Java服务对应的返回数据。
第二返回单元405,用于将目标Java服务对应的返回调用结果返回至API网关,由API网关将目标Java服务对应的返回调用结果返回至Python应用。
可选地,在本申请一具体实施例中,还包括:
验证单元,用于验证HTTP请求的通用请求参数是否正确。其中,若验证出HTTP请求的通用请求参数正确,则第一提取单元402执行从HTTP请求中提取出微服务请求参数。
上述本申请实施例公开的服务调用装置400中的各个单元具体的原理和执行过程,与上述本申请实施例公开的服务调用方法相同,可参见上述本申请实施例公开的服务调用方法中相应的部分,这里不再进行赘述。
本申请实施例提出的服务调用装置400,应用于代理转发组件,由于代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,因此第三接收单元401接收HTTP请求之后,其中HTTP请求用于Python应用请求调用目标Java服务,第一提取单元402从HTTP请求中提取出微服务请求参数;其中,微服务请求参数为用于说明目标Java服务的参数。第一调用单元403利用提取出的微服务请求参数,调用目标Java服务。获取单元404则获取目标Java服务对应的返回调用结果。目标Java服务对应的返回调用结果,包括:用于说明目标Java服务是否成功调用的调用结果和目标Java服务对应的返回数据,第二返回单元405将目标Java服务对应的返回调用结果返回至API网关,由API网关将目标Java服务对应的返回调用结果返回至Python应用。由于本申请中的代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,因此相较于现有的通过Java虚拟机调用目标Java服务的方式,本申请中第一提取单元402从HTTP请求中提取出微服务请求参数,第一调用单元403利用提取出的微服务请求参数,调用目标Java服务。不再需要执行启动和调用Java虚拟机的流程,减少了系统资源的消耗,进而可满足处理大量的Java服务调用需求。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
本申请实施例提出了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如上述各实施例提出的任意一种服务调用方法。
本申请实施例提出了一种设备,包括:一个或多个处理器,存储装置,其上存储有一个或多个程序。当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述各实施例提出的任意一种服务调用方法。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
上述计算机存储介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
需要说明的是,本公开上述的计算机存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机存储介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种服务调用方法,其特征在于,应用于应用程序接口API网关,所述服务调用方法包括:
接收Python应用发送的超文本传输协议HTTP请求;其中,所述HTTP请求用于所述Python应用请求调用目标Java服务;
将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用所述目标Java服务;其中,所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器;所述微服务请求参数为用于说明所述目标Java服务的参数;
接收所述代理转发组件发送的所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
将所述目标Java服务对应的返回调用结果返回至所述Python应用。
2.根据权利要求1所述的方法,其特征在于,所述将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用所述目标Java服务,包括:
将所述HTTP请求发送至负载均衡组件,由所述负载均衡组件通过轮询分配方式,将所述HTTP请求转发至轮询到的代理转发组件。
3.根据权利要求1所述的方法,其特征在于,所述将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用HTTP请求所述目标Java服务之前,还包括:
对所述HTTP请求进行鉴权;其中,若所述HTTP请求鉴权通过,则执行将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,调用所述目标Java服务步骤。
4.根据权利要求3所述的方法,其特征在于,所述对所述HTTP请求进行鉴权,包括:
查看所述HTTP请求中是否具有所述Python应用的应用标识和所述Python应用的认证信息;
若所述HTTP请求中具有所述Python应用的应用标识和所述Python应用的认证信息,则查看数据库中是否存在所述Python应用的应用标识和所述Python应用的认证信息;其中,若查看出所述数据库中存在所述Python应用的应用标识和所述Python应用的认证信息,则所述HTTP请求鉴权通过。
5.一种服务调用方法,其特征在于,应用于代理转发组件,其中所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,所述服务调用方法包括:
接收HTTP请求;其中,所述HTTP请求用于Python应用请求调用目标Java服务;
从所述HTTP请求中提取出微服务请求参数;其中,所述微服务请求参数为用于说明所述目标Java服务的参数;
利用提取出的所述微服务请求参数,调用所述目标Java服务;
获取所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
将所述目标Java服务对应的返回调用结果返回至API网关,由所述API网关将所述目标Java服务对应的返回调用结果返回至所述Python应用。
6.根据权利要求5所述的方法,其特征在于,所述利用提取出的所述微服务请求参数,调用所述目标Java服务,包括:
利用提取出的所述微服务请求参数,判断所述目标Java服务是否为远程过程调用RPC服务;
若所述目标Java服务为RPC服务,则利用所述微服务请求参数从云平台调用所述目标Java服务;
若所述目标Java服务不为RPC服务,则利用所述微服务请求参数在本地调用所述目标Java服务。
7.一种服务调用装置,其特征在于,应用于API网关,所述服务调用装置包括:
第一接收单元,用于接收Python应用发送的超文本传输协议HTTP请求;其中,所述HTTP请求用于所述Python应用请求调用目标Java服务;
第一发送单元,用于将所述HTTP请求发送至代理转发组件,由所述代理转发组件从所述HTTP请求中提取出微服务请求参数,利用提取出的所述微服务请求参数调用所述目标Java服务;其中,所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器;所述微服务请求参数为用于说明所述目标Java服务的参数;
第二接收单元,用于接收所述代理转发组件发送的所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
第一返回单元,用于将所述目标Java服务对应的返回调用结果返回至所述Python应用。
8.一种服务调用装置,其特征在于,应用于代理转发组件,其中所述代理转发组件为Java平台上的开源应用框架,内置嵌入HTTP服务器,所述服务调用装置包括:
第三接收单元,用于接收HTTP请求;其中,所述HTTP请求用于Python应用请求调用目标Java服务;
第一提取单元,用于从所述HTTP请求中提取出微服务请求参数;其中,所述微服务请求参数为用于说明所述目标Java服务的参数;
第一调用单元,用于利用提取出的所述微服务请求参数,调用所述目标Java服务;
获取单元,用于获取所述目标Java服务对应的返回调用结果;其中,所述目标Java服务对应的返回调用结果,包括:用于说明所述目标Java服务是否成功调用的调用结果和所述目标Java服务对应的返回数据;
第二返回单元,用于将所述目标Java服务对应的返回调用结果返回至API网关,由所述API网关将所述目标Java服务对应的返回调用结果返回至所述Python应用。
9.一种计算机可读介质,其特征在于,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1至4中任一所述的方法,或者,如权利要求5至6中任一所述的方法。
10.一种设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至4中任一所述的方法,或者,如权利要求5至6中任一所述的方法。
CN202110260605.4A 2021-03-10 2021-03-10 服务调用方法、装置、计算机可读介质以及设备 Active CN112995324B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110260605.4A CN112995324B (zh) 2021-03-10 2021-03-10 服务调用方法、装置、计算机可读介质以及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110260605.4A CN112995324B (zh) 2021-03-10 2021-03-10 服务调用方法、装置、计算机可读介质以及设备

Publications (2)

Publication Number Publication Date
CN112995324A true CN112995324A (zh) 2021-06-18
CN112995324B CN112995324B (zh) 2023-07-14

Family

ID=76336343

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110260605.4A Active CN112995324B (zh) 2021-03-10 2021-03-10 服务调用方法、装置、计算机可读介质以及设备

Country Status (1)

Country Link
CN (1) CN112995324B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472889A (zh) * 2021-07-08 2021-10-01 上海浦东发展银行股份有限公司 微服务的调度系统及方法
CN115174649A (zh) * 2022-06-20 2022-10-11 浪潮卓数大数据产业发展有限公司 一种跨机房rpc调用方法、设备及介质
CN115589426A (zh) * 2022-09-08 2023-01-10 中冶赛迪信息技术(重庆)有限公司 一种网络服务调用方法及系统
WO2023207213A1 (zh) * 2022-04-26 2023-11-02 马上消费金融股份有限公司 数据处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227611A (zh) * 2016-07-26 2016-12-14 北京北森云计算股份有限公司 一种多语言云编译的动态微服务调用方法及装置
CN106250199A (zh) * 2016-07-26 2016-12-21 北京北森云计算股份有限公司 一种多语言云编译的动态微服务调用方法及装置
CN106612188A (zh) * 2015-10-21 2017-05-03 中兴通讯股份有限公司 一种基于微服务架构扩展软件功能的方法及装置
US20180032573A1 (en) * 2016-07-29 2018-02-01 Hart, Inc. Systems and methods for bi-directional database application programming interface, extract transform and load system, and user computing device
WO2021022792A1 (zh) * 2019-08-02 2021-02-11 创新先进技术有限公司 一种鉴权与业务服务方法、装置以及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106612188A (zh) * 2015-10-21 2017-05-03 中兴通讯股份有限公司 一种基于微服务架构扩展软件功能的方法及装置
CN106227611A (zh) * 2016-07-26 2016-12-14 北京北森云计算股份有限公司 一种多语言云编译的动态微服务调用方法及装置
CN106250199A (zh) * 2016-07-26 2016-12-21 北京北森云计算股份有限公司 一种多语言云编译的动态微服务调用方法及装置
US20180032573A1 (en) * 2016-07-29 2018-02-01 Hart, Inc. Systems and methods for bi-directional database application programming interface, extract transform and load system, and user computing device
WO2021022792A1 (zh) * 2019-08-02 2021-02-11 创新先进技术有限公司 一种鉴权与业务服务方法、装置以及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472889A (zh) * 2021-07-08 2021-10-01 上海浦东发展银行股份有限公司 微服务的调度系统及方法
WO2023207213A1 (zh) * 2022-04-26 2023-11-02 马上消费金融股份有限公司 数据处理方法及装置
CN115174649A (zh) * 2022-06-20 2022-10-11 浪潮卓数大数据产业发展有限公司 一种跨机房rpc调用方法、设备及介质
CN115589426A (zh) * 2022-09-08 2023-01-10 中冶赛迪信息技术(重庆)有限公司 一种网络服务调用方法及系统

Also Published As

Publication number Publication date
CN112995324B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
CN112995324B (zh) 服务调用方法、装置、计算机可读介质以及设备
CN106506494B (zh) 一种开放平台的应用接入方法
CN108243188B (zh) 一种接口访问、接口调用和接口验证处理方法及装置
US8646062B2 (en) Remote authentication based on challenge-response using digital certificates
CN109309666A (zh) 一种网络安全中的接口安全控制方法及终端设备
US20100042988A1 (en) Installation Management using Virtual Machines
CN110266642A (zh) 身份认证方法及服务器、电子设备
CN105871838A (zh) 一种第三方账号的登录控制方法及用户中心平台
CN108092775B (zh) 一种校验方法及装置、电子设备
WO2016127436A1 (zh) 数据上载的方法、装置及系统
CN111010363B (zh) 信息认证方法及其系统、认证模块以及用户终端
US9832198B2 (en) Service-based message access layer frame and implementation method thereof
CN110677383A (zh) 防火墙开墙方法、装置、存储介质及计算机设备
CN112187465B (zh) 无感登录方法、装置、计算机设备和存储介质
CN103747076A (zh) 云平台的访问方法和装置
US9444629B2 (en) Dual layer transport security configuration
CN114389916A (zh) 一种组网通信方法、装置、系统及网络设备
CN115086394A (zh) 业务信息处理方法、装置及电子设备
CN110740163A (zh) 幂等性控制方法、装置、电子设备及可读存储介质
CN111698196A (zh) 一种鉴权方法及微服务系统
CN111600787B (zh) 信息处理方法、装置、电子设备和介质
CN108809927B (zh) 身份认证方法及装置
CN114024822B (zh) 基于区块链的物联网设备管理方法、设备、服务器及介质
WO2022062688A1 (zh) 消息推送方法、电子设备及存储介质
CN111221764B (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