服务接口异步调用的实现方法和装置制造方法及图纸

技术编号:15695595 阅读:47 留言:0更新日期:2017-06-24 11:05
本申请提供一种服务接口异步调用的实现方法,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上,所述方法包括:在收到包括调用接口和使用方业务标识的使用方调用请求后,根据其中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识;基于使用方调用请求,向所述调用接口发送网关调用请求;在从调用接口收到服务提供方包括关联字段的网关调用响应后,根据其中的关联字段生成关联值,获取与关联值对应的使用方业务标识;基于网关调用响应,向服务使用方发送包括使用方业务标识的使用方调用响应。通过本申请的技术方案,避免了因缺少使用方业务标识导致的数据库操作速度下降。

【技术实现步骤摘要】
服务接口异步调用的实现方法和装置
本申请涉及网络通信
,尤其涉及一种服务接口异步调用的实现方法和装置。
技术介绍
随着技术的发展,越来越多的生活和工作事项可以通过网络来完成。有的事项需要属于不同企业的不同应用系统之间的相互协作,因此,很多应用系统都提供了服务接口,供其他系统通过调用这些服务接口来使用相应的系统功能。不同应用系统之间服务接口的调用通常采用异步的方式,即服务使用方通过服务接口向服务提供方发起请求,服务提供方在对该服务请求处理完毕后,将对该请求的响应返回给服务使用方。通常应用系统采用业务标识来唯一代表一个业务过程,该业务标识也常常用作应用系统数据库表的索引或索引的一部分,用来对该业务过程的业务数据进行查询、修改等操作。由于各个应用系统按照自行定义的规范生成各自的业务标识,在服务接口调用的请求和响应中会携带使用方业务标识和提供方业务标识,供双方来识别请求或响应属于哪一个业务过程。现有技术中,服务使用方和服务提供方分别保存使用方业务标识和提供方业务标识的对应关系,在生成请求或响应时,根据本方的业务标识查找对方的业务标识,并封装在请求或响应中发送给对方。这种方式在应用于多个服务使用方和/或多个服务提供方时,不同服务使用方或不同服务提供方的业务标识可能会相同,从而无法按照本方的业务标识唯一确定对方的业务标识。当服务使用方无法在响应中得到本方业务标识时,只能按照响应中的其他数据来在数据库表中操作该业务过程的业务数据,大大降低了数据使用方的处理效率。当数据使用方采用分库分表结构存储业务数据时,将引发对所有分库分表的扫描,在高并发的情况下会对业务造成无法容忍的影响。
技术实现思路
有鉴于此,本申请提供一种服务接口异步调用的实现方法,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上,所述方法包括:在收到来自服务使用方、包括调用接口和使用方业务标识的使用方调用请求后,根据使用方调用请求中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识;所述所有关联字段能够唯一代表所述使用方业务标识;基于使用方调用请求,向具有所述调用接口的服务提供方发送网关调用请求,所述网关调用请求中包括提供方业务标识和所有关联字段;在从调用接口收到服务提供方包括关联字段的网关调用响应后,根据网关调用响应中的关联字段生成关联值,获取与关联值对应的使用方业务标识;基于网关调用响应,向服务使用方发送包括使用方业务标识的使用方调用响应。本申请还提供了一种服务接口异步调用的实现装置,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上,所述装置包括:使用方请求处理单元,用于在收到来自服务使用方、包括调用接口和使用方业务标识的使用方调用请求后,根据使用方调用请求中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识;所述所有关联字段能够唯一代表所述使用方业务标识;使用方请求转达单元,用于基于使用方调用请求,向具有所述调用接口的服务提供方发送网关调用请求,所述网关调用请求中包括提供方业务标识和所有关联字段;网关响应处理单元,用于在从调用接口收到服务提供方包括关联字段的网关调用响应后,根据网关调用响应中的关联字段生成关联值,获取与关联值对应的使用方业务标识;网关响应转达单元,用于基于网关调用响应,向服务使用方发送包括使用方业务标识的使用方调用响应。由以上技术方案可见,本申请的实施例中,由接入服务提供方和服务使用方的网关根据能够唯一代表使用方业务标识的一个到多个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,并在向服务提供方发出的调用请求中携带所有关联字段;在收到服务提供方包括关联字段的响应后,照关联字段的关联值查找使用方业务标识,用来向服务使用方回复响应;通过关联字段的唯一性来区分服务使用方以及业务过程,避免了因响应中缺少使用方业务标识导致的数据库操作速度下降。附图说明图1是本申请实施例应用场景的一种网络结构图;图2是本申请实施例中一种应用在网关上的服务接口异步调用的实现方法的流程图;图3是本申请应用示例中一种服务使用方、网关与服务提供方之间的交互流程图;图4是网关所在设备的一种硬件结构图;图5是本申请实施例中一种应用在网关上的服务接口异步调用的实现装置的逻辑结构图。具体实施方式本申请实施例应用场景的一种逻辑结构如图1所示,当多个服务使用方需要调用多个服务提供方的服务接口时,相比于更改每个服务使用方和每个服务提供方的实现,可以将一个到多个服务使用方和一个到多个服务提供方分别接入网关,在网关上运行本申请的实施例,对服务使用方与服务提供方之间调用接口的请求和响应进行转达,通过将使用方调用请求中的唯一代表业务标识的关联字段携带在向服务提供方发起的调用请求中,从而能够从服务提供方返回的调用响应中获取关联字段,来进一步得到该响应对应的使用方业务标识,避免了对服务使用方数据库的全表扫描,不会造成数据库操作速度下降,以解决现有技术中存在的问题。本申请的实施例中,网关与所接入的每个服务使用方和每个服务提供方相互可访问。需要说明的是,网关、服务使用方、服务提供方可以分别运行在独立的物理或逻辑设备上;网关也可以作为一个功能模块运行在一个服务使用方所在的设备上,用来进行对一个到多个服务提供方服务接口的调用;网关还可以作为一个功能模块运行在一个服务提供方所在的设备上,作为其服务接口的前置功能模块,来供一个到多个服务使用方调用。本申请的实施例可以运行在任何具有计算和存储能力的设备上,例如可以是手机、平板电脑、PC(PersonalComputer,个人电脑)、笔记本、服务器、虚拟机等物理设备或逻辑设备;也可以由两个或两个以上分担不同职责的物理或逻辑设备、相互协同来实现本申请实施例中的各项功能。本申请的实施例中,服务接口异步调用的实现方法的流程如图2所示,该方法应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上。步骤210,在收到来自服务使用方、包括调用接口和使用方业务标识的使用方调用请求后,根据使用方调用请求中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识。当在服务使用方进行的某个业务过程需要调用某个服务提供方的服务接口时,生成使用方调用请求并发送给网关。使用调用请求中包括使用方业务标识和调用接口。其中,使用方业务标识是服务使用方为调用该服务接口的业务过程赋予的标识,在服务使用方能够唯一代表该业务过程;如果该业务过程中需要进行多次服务接口调用,则该使用方业务标识将用于每一次的使用方调用请求中。调用接口为服务使用方所调用的服务接口,能够在网关所接入的所有服务接口中唯一代表一个服务接口;可以根据实际应用场景的具体实现来确定调用接口所包含的内容,例如,对网关接入一个服务提供方的应用场景,调用接口可以是服务接口标识;对网关接入多个服务提供方的应用场景,调用接口可以是服务提供方标识与服务接口标识。本申请的实施例中,使用方调用请求中携带有一个到多个关联字段,所有关联字段的组合在网关上能够唯一代表该服务使用方的该业务过程,或者说,所有关联字段能够唯一代表该使用方业务标识。需要说明的是,关联字段中可以包本文档来自技高网
...
服务接口异步调用的实现方法和装置

【技术保护点】
一种服务接口异步调用的实现方法,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上,其特征在于,所述方法包括:在收到来自服务使用方、包括调用接口和使用方业务标识的使用方调用请求后,根据使用方调用请求中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识;所述所有关联字段能够唯一代表所述使用方业务标识;基于使用方调用请求,向具有所述调用接口的服务提供方发送网关调用请求,所述网关调用请求中包括提供方业务标识和所有关联字段;在从调用接口收到服务提供方包括关联字段的网关调用响应后,根据网关调用响应中的关联字段生成关联值,获取与关联值对应的使用方业务标识;基于网关调用响应,向服务使用方发送包括使用方业务标识的使用方调用响应。

【技术特征摘要】
1.一种服务接口异步调用的实现方法,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关上,其特征在于,所述方法包括:在收到来自服务使用方、包括调用接口和使用方业务标识的使用方调用请求后,根据使用方调用请求中至少一个关联字段生成关联值,保存关联值与使用方业务标识的对应关系,按照调用接口获取提供方业务标识;所述所有关联字段能够唯一代表所述使用方业务标识;基于使用方调用请求,向具有所述调用接口的服务提供方发送网关调用请求,所述网关调用请求中包括提供方业务标识和所有关联字段;在从调用接口收到服务提供方包括关联字段的网关调用响应后,根据网关调用响应中的关联字段生成关联值,获取与关联值对应的使用方业务标识;基于网关调用响应,向服务使用方发送包括使用方业务标识的使用方调用响应。2.根据权利要求1所述的方法,其特征在于,所述保存关联值与使用方业务标识的对应关系,包括:为所述使用方调用请求生成唯一的索引码并在使用方业务标识记录表中以索引码为主键保存索引码与使用方业务标识的对应关系,在关联关系表中以关联值为主键保存关联值与索引码的对应关系;所述获取与关联值对应的使用方业务标识,包括:在关联关系表中查找与关联值对应的索引码,在使用方业务标识记录表中查找与所述索引码对应的使用方业务标识。3.根据权利要求1所述的方法,其特征在于,所述关联值以所有关联字段的组合为输入,采用预定的摘要算法生成。4.根据权利要求1所述的方法,其特征在于,所述按照调用接口获取提供方业务标识,包括:按照与调用接口对应的接口标识规则,生成提供方业务标识。5.根据权利要求1至4任意一项所述的方法,其特征在于,所述根据使用方调用请求中至少一个关联字段生成关联值,包括:按照与使用方调用请求中调用接口对应的使用方关联规则指定的关联字段和指定的组合方式,从使用方调用请求中提取关联字段后进行组合,并采用关联字段组合生成关联值;所述根据网关调用响应中的关联字段生成关联值,包括:按照接收所述网关调用响应的调用接口对应的提供方关联规则指定的关联字段和指定的组合方式,从网关调用响应中提取关联字段后进行组合,并采用关联字段组合生成关联值。6.根据权利要求5所述的方法,其特征在于,所述使用方业务标识包括:使用方业务流水号,所述提供方业务标识包括:提供方业务流水号;所述关联字段包括:使用方标识、使用方业务流水号和提供方标识。7.一种服务接口异步调用的实现装置,应用在接入一个到多个服务使用方和一个到多个服务提供方的网关...

【专利技术属性】
技术研发人员:杨勇
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1