CN112261072B - 一种服务调用方法、装置、设备和存储介质 - Google Patents

一种服务调用方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN112261072B
CN112261072B CN201910958753.6A CN201910958753A CN112261072B CN 112261072 B CN112261072 B CN 112261072B CN 201910958753 A CN201910958753 A CN 201910958753A CN 112261072 B CN112261072 B CN 112261072B
Authority
CN
China
Prior art keywords
interface
target
service
target service
environment
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
CN201910958753.6A
Other languages
English (en)
Other versions
CN112261072A (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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201910958753.6A priority Critical patent/CN112261072B/zh
Publication of CN112261072A publication Critical patent/CN112261072A/zh
Application granted granted Critical
Publication of CN112261072B publication Critical patent/CN112261072B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例公开了一种服务调用方法、装置、设备和存储介质。该方法包括:在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息;将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;调用目标线上环境中的目标服务。通过本发明实施例的技术方案,可以动态匹配线上环境,提高调用的灵活性,从而无需用户端在请求前手动修改线上环境,提高用户体验。

Description

一种服务调用方法、装置、设备和存储介质
技术领域
本发明实施例涉及互联网技术领域,尤其涉及一种服务调用方法、装置、设备和存储介质。
背景技术
随着互联网技术的快速发展,服务系统可以通过服务接口的方式对外提供各种服务,比如获取运单号服务、电子面单大头笔查询服务等。
通常,服务接口可以分为服务提供者和服务调用者,其中,服务提供者用于启动一个监听接口并发布服务,比如服务系统提供的各种服务;服务调用者用于链接服务提供者启动的接口并调用服务,比如用户端。
目前,服务调用者在订阅某个服务提供者时,往往是由服务调用者指定在配置文件中配置需要订阅的该服务提供者的名称,从而才可以调用该服务提供者所提供的接口服务。
然而,在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
现有技术是由服务调用者通过手动修改配置文件的方式来决定调用哪个服务提供者,从而使得服务提供者无法主动控制服务调用者所调用的接口服务环境。若存在大量的服务调用者,并且需要将线上生产环境修改为线上灰度环境时,则每个服务调用者均需要手动修改对应的配置文件,使得操作非常不灵活,并且在大量的服务调用者同时调用线上灰度环境中的服务时,也会大大提高生产事故的发生几率,以及影响用户体验。
发明内容
本发明实施例提供了一种服务调用方法、装置、设备和存储介质,以动态匹配线上环境,提高调用的灵活性,从而无需用户端在请求前手动修改线上环境,提高用户体验。
第一方面,本发明实施例提供了一种服务调用方法,包括:
在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得所述目标服务请求对应的接口请求信息;
将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
调用所述目标线上环境中的所述目标服务。
第二方面,本发明实施例还提供了一种服务调用装置,包括:
接口请求信息获取模块,用于在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得所述目标服务请求对应的接口请求信息;
目标线上环境确定模块,用于将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
目标服务调用模块,用于调用所述目标线上环境中的所述目标服务。
第三方面,本发明实施例还提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所提供的服务调用方法步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的服务调用方法步骤。
上述发明中的实施例具有如下优点或有益效果:
本发明实施例可以预先根据业务需求动态配置目标服务接口对应的至少一条预设接口配置信息,并且在目标服务被调用之前,可以对配置有预设标记的目标服务接口函数进行自动拦截,以便获得目标服务请求对应的接口请求信息;通过将接口请求信息与预设接口配置信息进行匹配,可以动态确定目标服务对应的目标线上环境,并调用该目标线上环境中的目标服务,从而提高了调用的灵活性,并且无需用户手动修改配置文件中的线上环境,提高了用户体验。
附图说明
图1是本发明实施例一提供的一种服务调用方法的流程图;
图2是本发明实施例二提供的一种服务调用方法的流程图;
图3是本发明实施例三提供的一种服务调用装置的结构示意图;
图4是本发明实施例四提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种服务调用方法的流程图,本实施例可适用于调用指定线上环境中的服务的情况,尤其是可以用于对上线后的服务进行测试过程中,对线上灰度环境中的服务进行调用的场景。该方法可以由服务调用装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于可以对外提供服务的设备中。该方法具体包括以下步骤:
S110、在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息。
其中,目标服务可以是指需要动态匹配调用环境的服务,即配置有预设标记的服务接口所对应的服务。目标服务请求可以是指向配置有预设标记的目标服务接口发送的用户请求。目标服务接口可以是指需要动态匹配请求的服务所对应的调用环境的业务接口。预设标记可以是指服务接口的标识,以便基于该预设标记可以区分目标服务接口和其它无需动态匹配调用环境的服务接口。本实施例中的预设标记可以根据实际需求进行设置。示例性地,本实施例可以将自定义的flowControl流控制注解,即@flowControl注解作为预设标记,对需要动态匹配调用环境的服务接口进行配置。接口请求信息可以是包括但不限于请求接口名称、请求接口函数名称、请求属性名称和请求属性值,其中请求属性名称和请求属性值可以根据获得的用户信息确定。目标服务接口函数可以是指用于处理目标服务请求,以调用目标服务的函数。
具体地,本实施例可以预先根据业务需求和实际情况,对需要动态匹配调用环境的服务接口函数配置预设标记,配置的预设标记可以包括被配置的服务接口的接口名称和接口函数名称。在检测到用户端向配置有预设标记的目标服务接口发送目标服务请求时,表明需要动态确定该目标服务所匹配的调用环境,此时可以对目标服务接口函数进行自动拦截,使得在执行目标服务接口函数之前,可以根据拦截的目标服务接口函数中的参数获得目标服务请求对应的接口请求信息。示例性地,可以将目标服务接口函数对应的接口名称、接口函数名称分别确定为请求接口名称和请求接口函数名称;若用户信息为用户PIN(Personal Identification Number,个人标识码)对应的具体PIN值,则可以将请求属性名称确定为PIN,请求属性值为对应的具体PIN值。
S120、将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境。
其中,预设接口配置信息可以是根据业务需求对目标服务接口进行动态配置所获得的至少一条信息。示例性地,可以在目标服务接口对应的配置器中根据用户需求动态添加新的预设接口配置信息、删除或修改已有的预设接口配置信息等。每条预设接口配置信息均可以包括但不限于配置接口名称、配置接口函数名称、配置属性名称和配置属性值。线上环境可以包括线上灰度环境和线上生产环境,其中线上灰度环境可以是指对上线后的服务进行修改后,在线上对修改后的服务进行测试的环境,以准确验证修改后的新服务功能是否运行正常;线上生产环境可以是指可以用户可以正常使用服务功能的环境,以正式对外提供服务。
具体地,将接口请求信息与目标服务接口对应的每条预设接口配置信息匹配,根据匹配结果可以确定该接口请求信息是否为目标服务接口对应的配置信息,从而根据预设规则和匹配结果可以动态配置用户端请求的目标服务对应的目标线上坏境。
示例性地,S120可以包括:若接口请求信息与任意一条预设接口配置信息匹配成功,则确定目标服务对应的目标线上环境为线上灰度环境;若接口请求信息与各预设接口配置信息均匹配失败,则确定目标服务对应的目标线上环境为线上生产环境。
具体地,本实施例可以将目标服务接口对应的预设接口配置信息均直接设定为线上灰度环境对应的接口配置信息,从而在接口请求信息与任意一条预设接口配置信息匹配成功时,均可以确定该用户端请求的目标服务对应的目标线上环境为线上灰度环境,以便利用该用户端进行线上测试;若接口请求信息与所有预设接口配置信息均匹配失败,则确定目标服务对应的目标线上环境为线上生产环境,以便对用户端提供正常服务。
需要注意的是,当大量用户端向目标服务接口发送目标服务请求时,可以通过将目标服务接口对应的预设接口配置信息的条数每次设置为有限几条,以便仅利用其中的有限几个用户端进行线上测试,若不存在测试问题再利用其它用户端继续进行测试,若存在问题则可以及时进行修正,并且也避免因大量用户端同时进行线上测试导致的生产事故,提高用户体验。
S130、调用目标线上环境中的目标服务。
具体地,若对某个线上服务功能进行修改,则此时该线上服务可以对应两种不同的服务环境,即线上灰度环境和线上生产环境,通过调用不同服务环境中的该线上服务可以获得不同的服务响应数据。本实施例中若目标线上环境为线上灰度环境,则调用线上灰度环境中的目标服务,以使用户端可以获得添加新功能后的目标服务对应的新的响应数据;若目标线上环境为线上生产环境,则调用线上生产环境中的目标服务,以使用户端可以获得未添加新功能的旧响应数据,从而实现了调用环境的动态匹配,提高了调用的灵活性。
本实施例的技术方案,可以预先根据业务需求动态配置目标服务接口对应的至少一条预设接口配置信息,并且在目标服务被调用之前,可以对配置有预设标记的目标服务接口函数进行自动拦截,以便获得目标服务请求对应的接口请求信息;通过将接口请求信息与预设接口配置信息进行匹配,可以动态确定目标服务对应的目标线上环境,并调用该目标线上环境中的目标服务,从而提高了调用的灵活性,并且无需用户手动修改配置文件中的线上环境,提高了用户体验。
在上述技术方案的基础上,S110中的“对配置有预设标记的目标服务接口函数进行拦截”,可以包括:基于面向切面编程AOP方式,对配置有预设标记的目标服务接口函数进行拦截。
其中,面向切面编程AOP(Aspect Oriented Programming)可以是指面向某个功能模块编程,典型的应用为Spring的声明式事务。具体地,本实施例可以通过利用Spring中的AOP切面技术,对任意一个配置有预设标记的目标服务接口函数进行拦截,无需在每个服务接口内部设置拦截器,从而降低了服务接口之间的耦合度。
在上述技术方案的基础上,S130可以包括:若目标线上环境与目标服务接口函数对应的服务环境相同,则直接调用目标服务接口函数,以调用目标服务;若目标线上环境与目标服务接口函数对应的服务环境不同,则调用目标线上环境对应的服务接口函数,以调用目标服务。
具体地,本实施例中不同的线上环境对应不同的目标服务接口函数,从而可以检测目标线上环境与被拦截的目标服务接口函数对应的服务环境是否相同,以通过调用对应的服务接口函数来调用目标服务。示例性地,当目标线上环境与目标服务接口函数对应的服务环境相同,则表明被拦截的目标服务接口函数即为目标线上环境对应的服务接口函数,此时可以直接调用该目标服务接口函数。若不同,则此时需要确定目标线上环境对应的服务接口函数并调用,从而可以在匹配的调用环境下自动调用目标服务,以使用户端获得对应的响应数据。
实施例二
图2为本发明实施例二提供的一种服务调用方法的流程图,本实施例在上述实施例的基础上,对“将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境”进行优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图2,本实施例提供的服务调用方法具体包括以下步骤:
S210、在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息。
S220、若接口请求信息与任意一条预设接口配置信息匹配成功,则将匹配成功的预设接口配置信息对应的预设服务环境确定为目标服务对应的目标线上环境。
其中,预设服务环境可以包括线上灰度环境和线上生产环境。
具体地,在对目标服务接口预先配置每条预设接口配置信息时,可以根据用户需求对每条预设接口配置信息设置一个对应的预设服务环境,以便在配置器中可以配置不同的服务环境,并且只需修改配置器中预设接口配置信息对应的预设服务环境,从而可以更加便捷地修改用户端请求的目标服务对应的调用环境,减少人工成本。示例性地,若接口请求信息包括请求接口名称、请求接口函数名称、请求属性名称和请求属性值,预设接口配置信息包括配置接口名称、配置接口函数名称、配置属性名称和配置属性值,则在将接口请求信息与每条预设接口配置信息进行匹配时,对于每条预设接口配置信息而言,需要分别将请求接口名称与配置接口名称进行匹配,将请求接口函数名称与配置接口函数名称进行匹配,将请求属性名称与配置属性名称进行匹配,以及将请求属性值与配置属性值进行匹配,当这四个参数均匹配成功时,则表明接口请求信息与该预设接口配置信息匹配成功,此时可以将该预设接口配置信息对应的预设服务环境确定为目标服务对应的目标线上环境。
S230、若接口请求信息与各预设接口配置信息均匹配失败,则将目标服务接口函数对应的服务环境确定为目标服务对应的目标线上环境。
具体地,对于每条预设接口配置信息而言,若接口请求信息与预设接口配置信息中的任一参数未匹配成功,则表明接口请求信息与该预设接口配置信息匹配失败。当接口请求信息与所有预设接口配置信息均匹配失败,则可以将目标服务接口函数对应的服务环境直接确定为目标服务对应的目标线上环境,以便可以直接调用目标服务接口函数。
S240、调用目标线上环境中的目标服务。
具体地,当接口请求信息与各预设接口配置信息均匹配失败时,表明目标线上环境即为目标服务接口函数对应的服务环境,此时无需对用户端动态匹配调用环境,从而可以直接调用目标服务接口函数,以使用户端可以更快地获得服务响应数据,提高响应效率。
本实施例的技术方案,当用户需求发生变化时,即用户端请求的目标服务对应的调用环境需要发生变化时,比如需要从线上灰度环境需要变更为线上生产环境是,则此时可以通过修改预设接口配置信息对应的预设服务环境的方式,快速修改该用户端请求的目标服务对应的调用环境,以便后续可以通过调用线上生产环境中的目标服务,使得该用户端可以获得正式的服务响应数据,从而可以适用于用户的多样化需求,并且进一步提高调用的灵活性。
以下是本发明实施例提供的服务调用装置的实施例,该装置与上述各实施例的服务调用方法属于同一个发明构思,在服务调用装置的实施例中未详尽描述的细节内容,可以参考上述服务调用方法的实施例。
实施例三
图3为本发明实施例三提供的一种服务调用装置的结构示意图,本实施例可适用于调用指定线上环境中的服务的情况,该装置具体包括:接口请求信息获取模块310、目标线上环境确定模块320和目标服务调用模块330。
其中,接口请求信息获取模块310,用于在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息;目标线上环境确定模块320,用于将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;目标服务调用模块330,用于调用目标线上环境中的目标服务。
本发明实施例的技术方案,可以预先根据业务需求动态配置目标服务接口对应的至少一条预设接口配置信息,并且在目标服务被调用之前,可以对配置有预设标记的目标服务接口函数进行自动拦截,以便获得目标服务请求对应的接口请求信息;通过将接口请求信息与预设接口配置信息进行匹配,可以动态确定目标服务对应的目标线上环境,并调用该目标线上环境中的目标服务,从而提高了调用的灵活性,并且无需用户手动修改配置文件中的线上环境,提高了用户体验。
可选地,目标线上环境确定模块320,具体用于:
若接口请求信息与任意一条预设接口配置信息匹配成功,则确定目标服务对应的目标线上环境为线上灰度环境;若接口请求信息与各预设接口配置信息均匹配失败,则确定目标服务对应的目标线上环境为线上生产环境。
可选地,目标线上环境确定模块320,还具体用于:若接口请求信息与任意一条预设接口配置信息匹配成功,则将匹配成功的预设接口配置信息对应的预设服务环境确定为目标服务对应的目标线上环境;若接口请求信息与各预设接口配置信息均匹配失败,则将目标服务接口函数对应的服务环境确定为目标服务对应的目标线上环境。
可选地,目标服务调用模块330,具体用于:
若目标线上环境与目标服务接口函数对应的服务环境相同,则直接调用目标服务接口函数,以调用目标服务;
若目标线上环境与目标服务接口函数对应的服务环境不同,则调用目标线上环境对应的服务接口函数,以调用目标服务。
可选地,接口请求信息获取模块310,还用于:
基于面向切面编程AOP方式,对配置有预设标记的目标服务接口函数进行拦截。
可选地,接口请求信息包括请求接口名称、请求接口函数名称、请求属性名称和请求属性值;预设接口配置信息包括配置接口名称、配置接口函数名称、配置属性名称和配置属性值。
本发明实施例所提供的服务调用装置可执行本发明任意实施例所提供的服务调用方法,具备执行服务调用方法相应的功能模块和有益效果。
值得注意的是,上述服务调用装置的实施例中,所包括的各个模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例四
图4为本发明实施例四提供的一种设备的结构示意图。图4示出了适于用来实现本发明实施方式的示例性设备12的框图。图4显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发实施例所提供的服务调用方法步骤,该方法包括:
在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息;
将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
调用目标线上环境中的目标服务。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的服务调用方法的技术方案。
实施例五
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例的服务调用方法步骤,该方法包括:
在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得目标服务请求对应的接口请求信息;
将接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
调用目标线上环境中的目标服务。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (9)

1.一种服务调用方法,其特征在于,包括:
在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得所述目标服务请求对应的接口请求信息;
将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
若所述目标线上环境与所述目标服务接口函数对应的服务环境相同,则直接调用所述目标服务接口函数,以调用所述目标服务;
若所述目标线上环境与所述目标服务接口函数对应的服务环境不同,则调用所述目标线上环境对应的服务接口函数,以调用所述目标服务。
2.根据权利要求1所述的方法,其特征在于,将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境,包括:
若所述接口请求信息与任意一条预设接口配置信息匹配成功,则确定目标服务对应的目标线上环境为线上灰度环境;
若所述接口请求信息与各预设接口配置信息均匹配失败,则确定目标服务对应的目标线上环境为线上生产环境。
3.根据权利要求1所述的方法,其特征在于,将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境,包括:
若所述接口请求信息与任意一条预设接口配置信息匹配成功,则将匹配成功的预设接口配置信息对应的预设服务环境确定为目标服务对应的目标线上环境;
若所述接口请求信息与各预设接口配置信息均匹配失败,则将所述目标服务接口函数对应的服务环境确定为目标服务对应的目标线上环境。
4.根据权利要求1所述的方法,其特征在于,对配置有预设标记的目标服务接口函数进行拦截,包括:
基于面向切面编程AOP方式,对配置有预设标记的目标服务接口函数进行拦截。
5.根据权利要求1-4任一所述的方法,其特征在于,所述接口请求信息包括请求接口名称、请求接口函数名称、请求属性名称和请求属性值;
所述预设接口配置信息包括配置接口名称、配置接口函数名称、配置属性名称和配置属性值。
6.一种服务调用装置,其特征在于,包括:
接口请求信息获取模块,用于在检测到用户端发送的目标服务请求时,对配置有预设标记的目标服务接口函数进行拦截,并获得所述目标服务请求对应的接口请求信息;
目标线上环境确定模块,用于将所述接口请求信息与目标服务接口对应的至少一条预设接口配置信息进行匹配,并根据匹配结果确定目标服务对应的目标线上环境;
目标服务调用模块,用于若目标线上环境与目标服务接口函数对应的服务环境相同,则直接调用目标服务接口函数,以调用目标服务;若目标线上环境与目标服务接口函数对应的服务环境不同,则调用目标线上环境对应的服务接口函数,以调用目标服务。
7.根据权利要求6所述的装置,其特征在于,所述目标线上环境确定模块,具体用于:
若所述接口请求信息与任意一条预设接口配置信息匹配成功,则确定目标服务对应的目标线上环境为线上灰度环境;
若所述接口请求信息与各预设接口配置信息均匹配失败,则确定目标服务对应的目标线上环境为线上生产环境。
8.一种服务调用设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的服务调用方法步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的服务调用方法步骤。
CN201910958753.6A 2019-10-10 2019-10-10 一种服务调用方法、装置、设备和存储介质 Active CN112261072B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910958753.6A CN112261072B (zh) 2019-10-10 2019-10-10 一种服务调用方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910958753.6A CN112261072B (zh) 2019-10-10 2019-10-10 一种服务调用方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN112261072A CN112261072A (zh) 2021-01-22
CN112261072B true CN112261072B (zh) 2024-04-09

Family

ID=74223793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910958753.6A Active CN112261072B (zh) 2019-10-10 2019-10-10 一种服务调用方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN112261072B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612846B (zh) * 2021-08-04 2022-07-29 掌阅科技股份有限公司 服务上线处理方法、计算设备及计算机存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107302526A (zh) * 2017-06-07 2017-10-27 努比亚技术有限公司 系统接口调用方法、设备和计算机可读存储介质
CN107451460A (zh) * 2017-06-28 2017-12-08 努比亚技术有限公司 接口处理方法、设备、服务器及计算机可读存储介质
CN107580080A (zh) * 2017-09-15 2018-01-12 北京奇艺世纪科技有限公司 一种测试环境的连接方法和装置
CN108062245A (zh) * 2017-12-14 2018-05-22 上海钢联电子商务股份有限公司 一种应用定时任务统一管理系统及方法
CN108255708A (zh) * 2017-12-14 2018-07-06 海尔优家智能科技(北京)有限公司 测试环境中访问生产文件的方法、装置、存储介质及设备
CN108319468A (zh) * 2017-01-16 2018-07-24 北京京东尚科信息技术有限公司 灰度发布方法、装置、系统及电子设备
CN109495559A (zh) * 2018-11-06 2019-03-19 用友网络科技股份有限公司 微服务客户端的服务注册及调用方法、注册及调用系统
CN109688202A (zh) * 2018-12-04 2019-04-26 北京腾云天下科技有限公司 一种接口数据的处理方法、装置、计算设备及存储介质
CN109788015A (zh) * 2017-11-15 2019-05-21 阿里巴巴集团控股有限公司 应用服务调用系统、方法以及装置
CN110083391A (zh) * 2019-03-16 2019-08-02 平安科技(深圳)有限公司 调用请求监控方法、装置、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108319468A (zh) * 2017-01-16 2018-07-24 北京京东尚科信息技术有限公司 灰度发布方法、装置、系统及电子设备
CN107302526A (zh) * 2017-06-07 2017-10-27 努比亚技术有限公司 系统接口调用方法、设备和计算机可读存储介质
CN107451460A (zh) * 2017-06-28 2017-12-08 努比亚技术有限公司 接口处理方法、设备、服务器及计算机可读存储介质
CN107580080A (zh) * 2017-09-15 2018-01-12 北京奇艺世纪科技有限公司 一种测试环境的连接方法和装置
CN109788015A (zh) * 2017-11-15 2019-05-21 阿里巴巴集团控股有限公司 应用服务调用系统、方法以及装置
CN108062245A (zh) * 2017-12-14 2018-05-22 上海钢联电子商务股份有限公司 一种应用定时任务统一管理系统及方法
CN108255708A (zh) * 2017-12-14 2018-07-06 海尔优家智能科技(北京)有限公司 测试环境中访问生产文件的方法、装置、存储介质及设备
CN109495559A (zh) * 2018-11-06 2019-03-19 用友网络科技股份有限公司 微服务客户端的服务注册及调用方法、注册及调用系统
CN109688202A (zh) * 2018-12-04 2019-04-26 北京腾云天下科技有限公司 一种接口数据的处理方法、装置、计算设备及存储介质
CN110083391A (zh) * 2019-03-16 2019-08-02 平安科技(深圳)有限公司 调用请求监控方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112261072A (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN108462760B (zh) 电子装置、集群访问域名自动生成方法及存储介质
CN111290806A (zh) 应用程序接口的调用方法、装置、计算机设备及存储介质
US10630399B2 (en) Testing distributed applications that have an established exchange in an advanced message queuing protocol (AMQP) message broker
CN110019496B (zh) 数据读写方法和系统
WO2019223136A1 (zh) 数据获取方法、装置、计算机设备以及存储介质
CN115795211A (zh) 一种页面展示方法、装置、系统、设备和存储介质
CN110881224A (zh) 一种网络长连接方法、装置、设备及存储介质
CN112364109B (zh) 事件的业务关联方法、系统、装置、电子设备及存储介质
CN112261072B (zh) 一种服务调用方法、装置、设备和存储介质
CN112000491B (zh) 一种应用程序接口调用方法、装置、设备和存储介质
CN113132522A (zh) 测试方法、装置、服务器及介质
CN113191889A (zh) 风控配置方法、配置系统、电子设备及可读存储介质
CN110233842B (zh) 一种请求的校验方法和相关装置
CN116610354A (zh) 参数校验方法、装置、计算机设备及存储介质
CN109933444A (zh) 一种寄宿应用间的即时通讯方法
CN113296911B (zh) 集群调用方法、集群调用装置、电子设备及可读存储介质
CN113726885A (zh) 一种流量配额的调整方法和装置
CN114036218A (zh) 一种数据模型切换方法、装置、服务器和存储介质
CN112364268A (zh) 资源获取方法、装置、电子设备及存储介质
CN112905970A (zh) 权限校验方法、装置、计算机可读存储介质及电子设备
CN113238940A (zh) 一种接口测试结果的比对方法、装置、设备和存储介质
CN111013157A (zh) 游戏加载方法、装置、设备及存储介质
CN109376023B (zh) 用于生成调用信息、发布返回码组的方法和设备
CN118503944B (zh) 一种鉴权方法、装置、设备及存储介质
US11861408B2 (en) Hardware accelerator service discovery

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