CN107066315A - 业务调用方法及装置 - Google Patents

业务调用方法及装置 Download PDF

Info

Publication number
CN107066315A
CN107066315A CN201611025407.5A CN201611025407A CN107066315A CN 107066315 A CN107066315 A CN 107066315A CN 201611025407 A CN201611025407 A CN 201611025407A CN 107066315 A CN107066315 A CN 107066315A
Authority
CN
China
Prior art keywords
service
subsystem
extended field
calling
business
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
CN201611025407.5A
Other languages
English (en)
Other versions
CN107066315B (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.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201611025407.5A priority Critical patent/CN107066315B/zh
Publication of CN107066315A publication Critical patent/CN107066315A/zh
Application granted granted Critical
Publication of CN107066315B publication Critical patent/CN107066315B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • 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/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Abstract

本申请提供一种业务调用方法,应用于包括扩展子系统、集成子系统以及若干业务子系统的分布式业务系统;包括:获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断该业务调用数据中是否携带扩展字段;如果该业务调用数据中携带扩展字段,将该扩展字段集中存储至扩展子系统;各业务子系统响应于外部系统的业务调用,执行与该业务调用对应的标准业务流程;当各业务子系统完成与该业务调用对应的标准业务流程后,集成子系统响应于外部系统发起的业务查询,执行对应于与该扩展字段的扩展业务流程,基于扩展字段对标准业务流程的业务处理结果进行修改更新后返回至外部系统。本申请可以降低系统开销,提升业务系统的业务灵活性。

Description

业务调用方法及装置
技术领域
本申请涉及计算机应用领域,尤其涉及一种业务调用方法及装置。
背景技术
随着业务领域的不断扩展,一些核心业务系统通常需要与不同的外部系统对接;例如,以核心支付业务系统为例,随着国际支付业务的扩展,其通常可能需要与不同国际机构的外部系统进行对接,来完成跨境支付业务。而在实际应用中,不同的外部系统,可能会由于其面向的业务用户群体彼此不同,或者其它的特殊原因,导致不同的外部系统在与核心业务系统对接时,会彼此存在一些具有差异的个性化业务需求。
在这种情况下,各外部系统在与核心业务系统进行对接时,通常都会在核心业务系统所支持的默认业务字段的基础上,自定义一些扩展字段;当外部系统针对核心业务系统执行业务调用时,再将自定义的扩展字段透传给核心业务系统进行相应的业务处理,从而可以在不修改核心业务系统原来的业务逻辑的前提下,来满足外部系统的个性化业务需求。
然而,在实际应用中,各外部系统将自定义的扩展字段透传给核心业务系统,可能会造成核心业务系统开销过大的问题。
发明内容
本申请提出一种业务调用方法,应用于分布式业务系统,所述分布式业务系统包括扩展子系统、集成子系统以及若干业务子系统,所述方法包括:
获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;
如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程;
当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新后并返回至所述外部系统。
本申请还提出一种业务调用装置,应用于分布式业务系统,所述分布式业务系统包括扩展子系统、集成子系统以及若干业务子系统,所述装置包括:
存储模块,获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
执行模块,各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程;
更新模块,当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新并返回至所述外部系统。
本申请中,提出一种分布式业务系统,该分布式业务系统在响应外部系统发起的业务调用时,可以将外部系统自定义的扩展字段集中存储至分布式系统中的扩展系统,而不再透传给各业务子系统;当各业务子系统响应于外部系统的业务调用,执行完成与该业务调用对应的标准业务流程后,该分布式业务系统中的集成子系统可以基于外部系统发起的业务查询,执行对应于该自定义的扩展字段的扩展业务流程,使用外部系统传入的扩展字段对标准业务流程的业务处理结果进行修改更新后返回至外部系统。
由于在整个业务调用的过程中,对外部系统自定义的扩展字段进行了集中存储并进行了隔离,扩展字段将不再需要透传给各业务子系统,从而可以降低各业务子系统的系统开销;而且可以实现在不修改核心业务系统中的各业务子系统的前提下,对核心业务系统的标准业务流程进行更改,因而可以大幅提升核心业务系统的业务灵活性。
附图说明
图1是本申请示出的现有技术中基于分布式架构的第三方支付系统的系统架构图;
图2是本申请一实施例示出的一种业务调用方法的流程图;
图3是本申请一实施例示出的一种基于分布式架构的第三方支付系统的系统架构图;
图4是本申请一实施例示出的一种业务调用装置的逻辑框图;
图5是本申请一实施例示出的承载所述业务调用装置的分布式业务系统所涉及的硬件结构图。
具体实施方式
在相关技术中,与核心业务系统对接的外部系统,为了在核心业务系统现有的业务框架下,实现一些个性化的业务需求,通常会在核心业务系统所支持的默认业务字段的基础上,自定义一些扩展字段;
例如,以核心业务系统为第三方支付系统为例,假设与支付系统对接的电商平台面向的用户群体,具有在支付系统的消费记录中,增加一个“人工处理状态”的扩展字段的需求;而与支付系统对接的银行面向的用户群体,具有在支付系统的消费记录中,增加一个“发卡行信息”的扩展字段的需求;那么,对于“人工处理状态”字段以及“发卡行信息”字段来说,均为支付系统在设计之初,未定义的字段,因此“人工处理状态”字段以及“发卡行信息”字段对于支付系统而言,则是扩展字段。
然而,在实际应用中,外部系统在针对核心业务系统执行业务调用时,通常会将自定义的扩展字段也一起透传给核心业务系统,由核心业务系统来完成标准业务流程;
例如,请参见图1,以电商平台(即外部系统)与第三方支付系统(即核心业务系统)对接完成银行卡支付为例,其中第三方支付系统可以由订单子系统、支付子系统以及网关子系统组成。整个支付流程可以包括标准支付流程,以及扩展流程,一共可以包括以下4个步骤:
步骤一:电商平台可以调用订单子系统的收单接口生成订单;
步骤二:电商平台可以调用支付子系统的支付接口,来支付生成的订单,生成支付信息;
步骤三:支付系统内部在接收到支付信息后,可以调用网关子系统与银行交互,完成银行卡支付,并获取银行返回的支付相关信息,然后变更支付订单的状态(比如支付成功或者失败);
步骤四:电商平台可以调用消费记录查询接口,来查询订单、支付单据以及网关单据等各种信息。
其中,在以上示出的四个步骤中,步骤一至步骤三,为第三方支付系统的标准支付流程;电商平台在分别执行步骤一至步骤三中的接口调用时,均会向支付系统内部透传一些支付系统内部并不需要感知的扩展字段。
而电商平台在执行步骤四中的消费记录查询接口的调用时,通常会向第三方支付系统查询透传的扩展字段对应的扩展信息;由于扩展字段通常并不被支付系统内部感知,因而支付系统内部的订单子系统、支付子系统以及网关子系统,在执行上述标准业务流程时,生成的订单、支付单据以及网关单据中通常并不包含与扩展字段对应的扩展信息;在这种情况下,为了满足上述外部系统的个性化业务需求,只能在上述标准业务流程结束后,依赖独立的数据订正流程,在得到的订单、支付单据以及网关单据中分别手动添加上述扩展字段对应的扩展信息。
可见,在以上示出的业务调用流程中,至少存在以下缺陷:
第一,外部系统透传给核心业务系统的扩展字段,对于核心业务系统来说并不需要感知,且无法被核心业务系统进行处理,因此向核心系统传入一些无法处理的扩展字段,可能会造成核心业务系统系统开销过大的问题;
第二,外部系统在业务调用时传入的扩展字段,分散在各个对外暴露调用接口的业务子系统中,因此对于核心业务系统而言,无法有效区分外部系统的个性化业务需求与标准业务流程,而且分散在各业务子系统中的扩展字段,可能会对标准业务流程造成影响。
第三,为满足外部系统的个性化业务需求,需要由各业务子系统在完成标准业务流程后,通过独立的数据订正流程,对标准业务流程的处理结果与扩展字段对应的扩展信息分别进行融合,并没有统一的解决方案。
为了解决上述问题,提出一种分布式业务系统,该分布式业务系统在响应外部系统发起的业务调用时,可以将外部系统自定义的扩展字段集中存储至分布式系统中的扩展系统,而不再透传给各业务子系统;当各业务子系统响应于外部系统的业务调用,执行完成与该业务调用对应的标准业务流程后,该分布式业务系统中的集成子系统可以基于外部系统发起的业务查询,执行对应于该自定义的扩展字段的扩展业务流程,使用外部系统传入的扩展字段对标准业务流程的业务处理结果进行修改更新后返回至外部系统;
一方面,由于在整个业务调用的过程中,对外部系统自定义的扩展字段进行了集中存储并进行了隔离,扩展字段将不再需要透传给各业务子系统,从而可以降低各业务子系统的系统开销;
另一方面,分布式业务系统在接收到外部系统的业务查询时,通过集成子系统来执行与扩展字段对应的扩展业务流程,使用该外部系统传入的扩展字段对标准业务流程的业务处理结果进行修改更新后并返回给外部系统,可以对标准业务流程与扩展业务流程进行隔离,使得与扩展字段对应的扩展业务流程不会对标准业务流程造成影响,而且可以有效区分出标准业务流程以及外部系统的个性化业务需求;
第三方面,通过集成子系统来执行与扩展字段对应的扩展业务流程,对标准业务流程的业务处理结果进行修改更新,可以在标准业务流程结束后,对标准业务流程进行扩展延长,从而可以通过统一的解决方案完成标准业务处理流程的业务处理结果与扩展字段的融合;而且,对于外部系统中的用户而言,可以通过向核心业务系统传入扩展字段,在不修改核心业务系统中的各业务子系统的前提下,对核心业务系统的标准业务流程进行更改,因而可以大幅提升核心业务系统的业务灵活性。
下面通过具体实施例并结合具体的应用场景对本申请进行描述。
请参考图2,图2是本申请一实施例提供的一种业务调用方法,应用于分布式业务系统,所述方法执行以下步骤:
步骤201,获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
在本例中,上述分布式业务系统,可以由扩展子系统、集成子系统以及核心业务系统组成;
扩展子系统,用于集中存储外部系统在对核心业务系统进行业务调用时,透传的扩展字段。
核心业务系统,可以由若干个业务子系统组成,用于响应外部系统的业务调用,来执行对应的标准业务流程;
例如,以上述分布式业务系统为基于分布式架构的第三方支付系统为例,该核心业务系统可以由订单子系统、支付子系统以及网关子系统组成,
其中,需要说明的是,由于扩展字段将会集中存储在扩展子系统中,将不再被透传至各业务子系统,因此各业务子系统在执行标准业务流程时,将不会受到透传至本地的扩展字段的影响。
集成子系统,用于在核心业务系统完成标准业务流程后,响应于外部系统发起的业务查询,执行对应于与扩展字段的扩展业务流程,基于外部系统传入的扩展字段对标准业务流程的业务处理结果进行修改更新,并向外部系统返回查询结果。
需要说明的是,承载上述分布式业务系统以及各子系统的硬件架构,在本例中不进行特别限定,在实际应用中,可以是服务器、服务器集群,或者基于服务器集群搭建的业务平台。
在本例中,上述分布式业务系统,可以通过一个网关接口与外部系统进行业务对接;当外部系统发起针对核心业务系统中各业务子系统的业务调用时,该分布式业务系统可以通过上述网关接口,来接收外部系统针对系统内内部的各业务子系统对应的业务调用接口进行调用时,传递的业务调用数据。
其中,上述外部系统,是指与核心业务系统存在业务调用关系的第三方系统;例如,以核心业务系统为支付系统为例,上述外部系统可以是与该支付系统对接的第三方的电商平台,也可以是与该支付系统对接的银行。
当上述分布式业务系统通过上述网关接口,接收到外部系统在调用系统内部的业务子系统时传递的业务调用数据后,由于该业务调用数据中可能携带外部系统自定义的扩展字段,因此上述分布式业务系统可以在上述网关接口处,解析该业务调用数据中携带的扩展字段。
一方面,如果该业务调用数据中携带扩展字段,此时可以将解析出的扩展字段从该业务调用数据中分离,然后将解析出的扩展字段集中存储至上述扩展系统。另一方面,当将解析出的扩展字段从上述业务调用数据中分离后,还可以继续将该业务调用数据提交至对应的业务子系统进行后续的业务处理。此时传递至该业务子系统的业务调用数据中,将不再携带外部系统自定义的扩展字段。当然,如果上述业务调用数据中未携带扩展字段,此时可以继续将该业务调用数据提交至对应的业务子系统进行后续的业务处理即可。
通过这种方式,外部系统在按照一定的业务调用顺序,针对分布式业务系统内部的各业务子系统依次进行业务调用时,分布式业务系统可以在与外部系统对接的网关接口处,将外部系统传递的业务调用数据中携带的扩展字段,以及核心业务系统支持的默认业务字段进行分离。
另外,需要说明的是,对于集中存储在上述扩展子系统中的扩展字段,可以由外部系统在任意时刻进行更新。而上述分布式业务系统,则可以响应于该外部系统在任意时刻发起的扩展字段更新操作,对上述扩展子系统中集中存储的扩展字段执行更新。
其中,针对扩展子系统的更新操作,可以包括新增扩展字段、修改扩展字段以及删除扩展字段等操作。
例如,除了以上示出的外部系统可以将自定义的扩展字段,在针对上述核心业务系统中的各业务子系统执行业务调用时,携带在需要传递的业务调用数据中通过上述网关接口一并传入上述分布式系统以外,在实际应用中,上述扩展字段也可以在外部系统在发起上述业务调用的过程中,或者在业务调用结束后的任意时刻传入。而外部系统在接收到外部系统在上述业务调用的过程中,或者在业务调用结束后任意时刻传入的扩展字段时,可以将该扩展字段作为新增字段集中存储至上述集成子系统。
当然,除了新增扩展字段以外,当将外部系统在针对核心业务系统发起业务调用时传入的扩展字段集中存储至上述集成子系统后,外部系统也可以在上述业务调用的过程中,或者在业务调用结束后任意时刻传入的新的扩展字段,对扩展字段中存储的原有的扩展字段执行更新;或者,外部系统也可以在上述业务调用的过程中,或者在业务调用结束后任意时刻对集成子系统中存储的已传入的扩展字段执行删除。
通过以上描述可知,在本例中,外部系统在向分布式业务系统传入扩展字段时,可以在针对核心业务系统发起业务调用时随业务调用数据一起传入,也可以在发起业务调用的过程中,或者业务调用结束后的任意时刻单独传入;而且,对于扩展子系统中集中存储的扩展字段,外部系统也可以基于实际的业务需求,在任意时刻进行主动更新,从而可以提升业务的灵活性。
步骤202,各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程。
在本例中,外部系统可以按照一定的业务调用顺序,依次调用核心业务系统中的各业务子系统。当系统内部的各业务子系统,在接收到外部系统通过上述网关接口提交至本地的业务调用数据时,可以分别响应外部系统的业务调用,执行与所述业务调用对应的标准业务流程。
例如,当上述核心业务系统为由订单子系统、支付子系统以及与银行对接的网关子系统组成的第三方支付系统时,作为外部系统的电商平台,可以按照顺序首先调用订单子系统生成订单,其次调用支付子系统完成订单支付,最后在系统内部调用网关子系统与银行交互,完成银行卡支付。在这种情况下,上述标准业务流程则可以是一次完整的基于电商平台与第三方支付系统对接完成银行卡支付的流程。
由于外部系统通过网关接口提交至各业务子系统的业务调用数据中携带的扩展字段,已在上述网关接口处进行了分离,因此各业务子系统在响应外部系统的业务调用时,不再需要执行与扩展字段对应的扩展业务流程,仅执行标准业务流程即可。
可见,通过这种方式,可以实现对标准业务流程,以及与扩展字段对应的扩展业务流程的隔离,使得与扩展字段对应的扩展业务流程不会对标准业务流程造成影响;而且,对于核心业务系统而言,还能够有效区分外部系统的个性化业务需求与标准业务流程。
步骤203,当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新后返回至所述外部系统。
在本例中,各业务子系统在互相配合完成上述标准业务流程后:
一方面,可以通过上述网关接口向上述外部系统返回一个业务是否成功执行的回执信息,以告知外部系统本次业务调用是否成功响应;例如,当上述业务调用为支付调用时,上述回执信息可以是一个是否支付成功的通知消息;
另一方面,可以将完成上述标准业务流程后,得到的业务处理结果进行存储,并面向外部系统开放相应的查询接口,以供外部系统对上述业务处理结果进行调用和查询。
其中,需要说明的是,由于外部系统通过上述网关接口提交至各业务子系统的业务调用数据中所携带的扩展字段,已经预先进行了分离,因而在完成上述标准业务流程后所得到的业务处理结果中,将仅包含核心业务系统所支持的默认业务字段。
在本例中,上述集成子系统中可以预配置对应于上述外部系统的扩展业务规则;该扩展业务规则,用于对各业务子系统完成标准业务流程后的业务处理结果中所包含的默认业务字段,与外部系统自定义的扩展字段对应的扩展信息进行融合,基于外部系统传入的扩展字段对应的扩展信息,对标准业务流程后的业务处理结果中所包含的默认业务字段对应的业务信息进行修改更新。
例如,在实际应用中,与集成子系统对接的外部系统的业务开发人员,可以基于实际的个性化业务需求,在集成子系统上配置相应的扩展业务,从而使得集成子系统可以基于预配置的扩展业务规则,基于外部系统的个性化业务需求,对核心业务系统所支持的默认业务字段,与外部系统自定义的扩展字段对应的扩展信息进行融合。
其中,需要说明的是,集成子系统上预配置的扩展业务规则对应的处理逻辑,在本例中不进行特别限定,外部系统的业务开发人员可以基于实际的个性化需求进行自定义;
例如,上述扩展业务规则对应的处理逻辑,可以是在各业务子系统在完成标准业务流程后得到的业务处理结果中所包括的若干默认业务字段的基础上,增加扩展字段,或者将指定的默认业务字段替换为扩展字段。
在本例中,外部系统在接收到业务调用成功的回执信息后,作为本次业务调用的发起方,还可以通过上述外部系统来进一步查询上述业务调用的业务处理结果。此时该发起方需要查询的业务处理结果中,既需要包含上述核心业务系统支持的默认业务字段对应的业务信息,也需要包含外部系统自定义的扩展字段对应的扩展信息。
因此,在这种情况下,当上述发起方通过上述外部系统发起业务处理结果的查询后,外部系统可以通过上述网关接口,向上述分布式业务系统发送一个业务查询请求。而上述分布式业务系统在接收到该业务查询请求后,可以将该查询请求提交至上述集成子系统继续进行处理。
在本例中,当集成子系统在接收到外部系统发起的业务查询请求后,可以响应外部系统发起的业务查询,来执行对应于该外部系统在发起业务调用时传入的扩展字段的扩展业务流程,对上述业务处理结果中核心业务系统支持的默认业务字段对应的业务信息,与该外部系统在发起业务调用时传入的扩展字段对应的扩展信息进行融合,基于外部系统传入的扩展字段对上述业务处理结果进行修改更新。
具体的,当集成子系统在接收到外部系统发起的业务查询请求后,首先可以获取预配置的对应于该外部系统的扩展业务规则,然后分别调用各业务子系统在完成标准业务流程的业务处理结果,以及扩展子系统中存储的该外部系统传入的扩展字段(包括在发起业务调用时传入的扩展字段,以及在业务调用过程中或者业务调用结束后任意时刻传入的扩展字段)对应的扩展信息。
最后,集成子系统可以基于获取到的为该业务子系统预配置的扩展业务规则,对标准业务流程的业务处理结果中的默认业务字段对应的业务信息,与上述扩展字段对应的信息进行融合,使用与扩展字段对应的扩展信息,对上述业务处理结果进行修改更新,生成对应的业务查询记录,然后将该业务查询记录作为查询结果返回给上述业务系统。
此时生成的该业务记录中,将同时包含核心业务系统支持的默认业务字段对应的业务信息,以及上述外部系统自定义的扩展字段对应的扩展信息,从而能够正常满足上述外部系统的个性化业务需求。
可见,通过这种方式,可以在标准业务流程结束后,对标准业务流程进行扩展延长,从而可以通过统一的解决方案完成标准业务处理流程的业务处理结果与扩展字段的融合。而且,对于外部系统中的用户而言,可以通过向核心业务系统传入扩展字段,在不修改核心业务系统中的各业务子系统的前提下,对核心业务系统的标准业务流程进行更改,因而可以大幅提升核心业务系统的业务灵活性。
以下结合电商平台与第三方支付系统对接完成银行卡支付为例,对本申请的技术方案进行描述。
在本例中,上述分布式业务系统,可以基于分布式架构的第三方支付系统,该第三方支付系统可以包括核心支付系统(pay core)、扩展子系统、集成子系统;其中,核心支付系统有收单子系统、支付子系统以及与银行对接的网关子系统(即支付网关)组成。上述外部系统,可以是与上述第三方支付系统对接的电商平台或者银行。
请参见图3,图3为本例示出的一种基于分布式架构的第三方支付系统的系统架构图。
如图3所示,所述第三方支付系统包括核心支付系统(cpre pay)、扩展系统以及集成子系统。其中,核心支付系统由订单子系统、支付子系统以及与银行对接的网关子系统组成。
以下基于图3中示出的系统架构图并结合具体的应用场景对本申请的技术方案进行详细描述。
应用场景一:
假设用户通过电商平台调用第三方支付系统,来完成将支付系统中的支付余额提现至银行卡的提现流程。
在本例中,用户可以通过电商平台将第三方支付系统中的支付余额,提现至银行卡,并且当用户提现失败时,电商平台可以支持人工处理将用户的提现金额转账至用户的银行卡。
一方面,电商平台在针对第三方支付系统发起提现调用时,可以基于这一个性化的业务需求,在消费记录中自定义一个扩展字段“人工处理状态”。
另一方面,电商平台的开发人员可以在集成子系统中预配置将消费记录中的“订单状态”这一默认业务字段,替换为上述自定义的“人工处理状态”这一扩展字段的扩展业务规则。
当用户需要将支付系统中的支付余额提现至银行卡时,可以通过电商平台,调用订单子系统的收单接口生成提现订单;调用支付子系统的支付接口,来支付该提现订单,生成提现信息;支付平台系统内部在收到提现信息后,可以调用网关子系统与银行交互,完成提现至银行卡的操作,并获取银行返回的提现相关信息,然后变更提现订单的状态(提现失败或者提现成功),以完成提现至银行卡的标准业务流程。
其中,用户在通过电商平台调用上述各接口,完成提现至银行卡的标准业务流程的过程中,还可以向支付系统传入电商平台自定义的扩展字段“人工处理状态”。支付平台可以将扩展字段“人工处理状态”对应的扩展信息,隔离存储至集成子系统,而并不进行透传。
假设上述第三方支付系统完成提现至银行卡的标准业务流程后,银行出现业务异常导致提现失败,那么在该第三方支付系统在完成上述提现至银行卡的标准业务流程后,与提现订单对应的消费记录中“提现状态”这一默认业务字段所指示的状态会变更为“提现失败”。
由于发生提现失败,电商平台可以由人工处理将用户的提现金额转账至用户的银行卡,并在提现成功后,将集成子系统中存储的扩展字段“人工处理状态”所指示的状态更改为“人工完成提现”。
当用户成功将支付余额体现至银行卡后,还可以通过电商平台向该第三方支付系统发起消费记录查询,来查看本次提现操作的提现订单的详情信息。第三方支付系统中的集成子系统可以响应用户发起的查询操作,调用在完成提现至银行卡的标准业务流程后的提现订单,以及扩展子系统中存储的扩展字段“人工处理状态”,然后基于电商平台的业务开发人员预配置扩展业务规则,将该提现订单中“订单状态”这一默认业务字段替换为扩展字段“人工处理状态”,完成对消费记录的修改。
当消费记录修改完成后,该提现订单的订单状态,将由“提现失败”变更为“人工完成提现”。当集成子系统将订单状态替换完成的消费记录返回至外部系统后,用户通过查看该消费记录的详情信息,可以了解到该提现订单的状态为人工完成提现”(而不是提现失败),本次提现至银行卡的操作是由电商平台人工处理完成的。
应用场景二:
假设用户通过电商平台调用第三方支付系统,来完成利用银行卡余额的充值流程。
在本例中,用户可以通过电商平台使用银行卡余额,来完成在线充值。
一方面,电商平台基于个性化的业务需求,可以在消费记录中自定义一个扩展字段“发卡行信息”。
另一方面,电商平台的开发人员可以在集成子系统中预配置将消费记录中增加上述自定义的“发卡行信息”这一扩展字段的扩展业务规则。
当用户需要通过支付系统使用银行卡余额来完成在线充值时,可以通过电商平台,调用订单子系统的收单接口生成充值订单;调用支付子系统的支付接口,来支付该充值订单,生成充值信息;支付平台系统内部在收到充值信息后,可以调用网关子系统与银行交互,完成使用银行卡余额的充值操作,并获取银行返回的充值相关信息,然后变更充值订单的状态(充值失败或者充值成功),以完成使用银行卡余额进行充值的标准业务流程。
其中,用户在通过电商平台调用上述各接口,完成使用银行卡余额进行充值的标准业务流程的过程中,还可以向支付系统传入电商平台自定义的扩展字段“发卡行信息”。支付平台可以将扩展字段“发卡行信息”对应的扩展信息隔离存储至集成子系统,而并不进行透传。
假设用户通过上述第三方支付系统使用银行卡余额成功的完成了充值后,第三方支付系统收到了银行返回了发卡行信息,此时可以将接收到的发卡行信息存储至集成子系统中的扩展字段“发卡行信息”中。
当用户成功充值后,还可以通过电商平台向该第三方支付系统发起消费记录查询,来查看本次充值操作的充值订单的详情信息。第三方支付系统中的集成子系统可以响应用户发起的查询操作,调用在使用银行卡余额进行充值的标准业务流程后的充值订单,以及扩展子系统中存储的扩展字段“发卡行信息”,然后基于电商平台的业务开发人员预配置扩展业务规则,在与本次充值操作对应的消费记录中增加上述自定义的“发卡行信息”这一扩展字段,以完成消费记录的修改。
当消费记录修改后,与本次充值操作对应的消费记录中将会记录本次充值所使用的银行卡的发卡行信息。当集成子系统将该消费记录返回至外部系统后,用户通过查看该消费记录的详情信息,可以了解到本次充值操作所使用的银行卡的发卡行信息(消费记录的默认格式中不包含发卡行信息)。
需要说明的是,以上示出的应用场景仅为示例性的,并不用于限定;即在实际应用中,本申请记载的技术方案,也可以在与以上示出的应用场景类型的其它应用场景中等同实施,在本例中不再进行一一列举。
与上述方法实施例相对应,本申请还提供了装置的实施例。
请参见图4,本申请提出一种业务调用装置40,应用于远程调用的发起端;其中,请参见图5,作为承载所述业务调用装置40的分布式业务系统所涉及的硬件架构中,通常包括CPU、内存、非易失性存储器、网络接口以及内部总线等;以软件实现为例,所述业务调用装置40通常可以理解为加载在内存中的计算机程序,通过CPU运行之后形成的软硬件相结合的逻辑装置,所述装置40包括:
存储模块401,获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
执行模块402,各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程;
更新模块403,当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新并返回至所述外部系统。
在本例中,所述存储模块401具体用于:
解析所述业务调用数据中携带的扩展字段;
将解析出的扩展字段从所述业务调用数据中分离,并将分离出的扩展字段集中存储至所述扩展子系统。
在本例中,所述存储模块401进一步用于:
将解析出的扩展字段从所述业务调用数据中分离后,将所述业务调用数据提交至对应的业务子系统进行业务处理。
在本例中,所述更新模块403进一步用于:
响应于所述外部系统在任意时刻发起的扩展字段更新操作,对所述扩展子系统中集中存储的扩展字段执行更新。
在本例中,所述集成子系统中预配置了对应于所述外部系统的扩展业务规则;其中,当所述集成子系统与多个不同的外部系统对接时,所述集成子系统中将分别预配置对应于所述多个不同的外部系统的扩展业务规则;
所述更新模块403具体用于:
获取预配置的对应于所述外部系统的扩展业务规则;
调用所述标准业务流程的业务处理结果,以及调用所述扩展子系统中存储的与所述外部系统对应的扩展字段;
基于所述扩展业务规则以及所述扩展字段,针对所述标准业务流程的业务处理结果进行修改更新生成对应的业务查询记录,并将所述业务查询记录返回至所述外部系统。
在本例中,所述业务调用包括支付调用;所述分布式业务系统包括基于分布式架构的第三方支付系统;所述若干业务子系统包括订单子系统、支付子系统以及与银行对接的网关子系统。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (12)

1.一种业务调用方法,其特征在于,应用于分布式业务系统,所述分布式业务系统包括扩展子系统、集成子系统以及若干业务子系统,所述方法包括:
获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;
如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程;
当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新后返回至所述外部系统。
2.根据权利要求1所述的方法,其特征在于,所述将所述扩展字段集中存储至所述扩展子系统,包括:
解析所述业务调用数据中携带的扩展字段;
将解析出的扩展字段从所述业务调用数据中分离,并将分离出的扩展字段集中存储至所述扩展子系统。
3.根据权利要求2所述的方法,其特征在于,还包括:
当将解析出的扩展字段从所述业务调用数据中分离后,将所述业务调用数据提交至对应的业务子系统进行业务处理。
4.根据权利要求1所述的方法,其特征在于,还包括:响应于所述外部系统在任意时刻发起的扩展字段更新操作,对所述扩展子系统中集中存储的扩展字段执行更新。
5.根据权利要求1所述的方法,其特征在于,所述集成子系统中预配置了对应于所述外部系统的扩展业务规则;其中,当所述集成子系统与多个不同的外部系统对接时,所述集成子系统中将分别预配置对应于所述多个不同的外部系统的扩展业务规则;
所述执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新后返回至所述外部系统,包括:
获取预配置的对应于所述外部系统的扩展业务规则;
调用所述标准业务流程的业务处理结果,以及调用所述扩展子系统中存储的与所述外部系统对应的扩展字段;
基于所述扩展业务规则以及所述扩展字段,针对所述标准业务流程的业务处理结果进行修改更新生成对应的业务查询记录,并将所述业务查询记录返回至所述外部系统。
6.根据权利要求1所述的方法,其特征在于,所述业务调用包括支付调用;所述分布式业务系统包括基于分布式架构的第三方支付系统;所述若干业务子系统包括订单子系统、支付子系统以及与银行对接的网关子系统。
7.一种业务调用装置,其特征在于,应用于分布式业务系统,所述分布式业务系统包括扩展子系统、集成子系统以及若干业务子系统,所述装置包括:
存储模块,获取外部系统在发起针对各业务子系统的业务调用时传递的业务调用数据,并判断所述业务调用数据中是否携带扩展字段;如果所述业务调用数据中携带扩展字段,将所述扩展字段集中存储至所述扩展子系统;
执行模块,各业务子系统响应于所述外部系统的业务调用,执行与所述业务调用对应的标准业务流程;
更新模块,当各业务子系统完成与所述业务调用对应的标准业务流程后,集成子系统响应于所述外部系统发起的业务查询,执行对应于与所述扩展字段的扩展业务流程,基于所述扩展字段对所述标准业务流程的业务处理结果进行修改更新后返回至所述外部系统。
8.根据权利要求7所述的装置,其特征在于,所述存储模块具体用于:
解析所述业务调用数据中携带的扩展字段;
将解析出的扩展字段从所述业务调用数据中分离,并将分离出的扩展字段集中存储至所述扩展子系统。
9.根据权利要求8所述的装置,其特征在于,所述存储模块进一步用于:
将解析出的扩展字段从所述业务调用数据中分离后,将所述业务调用数据提交至对应的业务子系统进行业务处理。
10.根据权利要求7所述的装置,其特征在于,所述更新模块进一步用于:
响应于所述外部系统在任意时刻发起的扩展字段更新操作,对所述扩展子系统中集中存储的扩展字段执行更新。
11.根据权利要求7所述的装置,其特征在于,所述集成子系统中预配置了对应于所述外部系统的扩展业务规则;其中,当所述集成子系统与多个不同的外部系统对接时,所述集成子系统中将分别预配置对应于所述多个不同的外部系统的扩展业务规则;
所述更新模块具体用于:
获取预配置的对应于所述外部系统的扩展业务规则;
调用所述标准业务流程的业务处理结果,以及调用所述扩展子系统中存储的与所述外部系统对应的扩展字段;
基于所述扩展业务规则以及所述扩展字段,针对所述标准业务流程的业务处理结果进行修改更新生成对应的业务查询记录,并将所述业务查询记录返回至所述外部系统。
12.根据权利要求7所述的装置,其特征在于,所述业务调用包括支付调用;所述分布式业务系统包括基于分布式架构的第三方支付系统;所述若干业务子系统包括订单子系统、支付子系统以及与银行对接的网关子系统。
CN201611025407.5A 2016-11-16 2016-11-16 业务调用方法及装置 Active CN107066315B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611025407.5A CN107066315B (zh) 2016-11-16 2016-11-16 业务调用方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611025407.5A CN107066315B (zh) 2016-11-16 2016-11-16 业务调用方法及装置

Publications (2)

Publication Number Publication Date
CN107066315A true CN107066315A (zh) 2017-08-18
CN107066315B CN107066315B (zh) 2020-05-05

Family

ID=59619488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611025407.5A Active CN107066315B (zh) 2016-11-16 2016-11-16 业务调用方法及装置

Country Status (1)

Country Link
CN (1) CN107066315B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563523A (zh) * 2018-04-25 2018-09-21 咪咕文化科技有限公司 信息回调方法、设备及存储介质
CN110349068A (zh) * 2019-07-05 2019-10-18 上海瀚之友信息技术服务有限公司 一种公共服务系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458705A (zh) * 2008-12-29 2009-06-17 阿里巴巴集团控股有限公司 一种不同应用系统间的数据核对方法、装置及系统
CN101727624A (zh) * 2009-12-17 2010-06-09 中国电力科学研究院 一种展现任务列表的方法及系统
CN102768636A (zh) * 2011-05-05 2012-11-07 阿里巴巴集团控股有限公司 一种日志解析方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458705A (zh) * 2008-12-29 2009-06-17 阿里巴巴集团控股有限公司 一种不同应用系统间的数据核对方法、装置及系统
CN101727624A (zh) * 2009-12-17 2010-06-09 中国电力科学研究院 一种展现任务列表的方法及系统
CN102768636A (zh) * 2011-05-05 2012-11-07 阿里巴巴集团控股有限公司 一种日志解析方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563523A (zh) * 2018-04-25 2018-09-21 咪咕文化科技有限公司 信息回调方法、设备及存储介质
CN108563523B (zh) * 2018-04-25 2021-06-04 咪咕文化科技有限公司 信息回调方法、设备及存储介质
CN110349068A (zh) * 2019-07-05 2019-10-18 上海瀚之友信息技术服务有限公司 一种公共服务系统
CN110349068B (zh) * 2019-07-05 2023-06-20 上海瀚之友信息技术服务有限公司 一种公共服务系统

Also Published As

Publication number Publication date
CN107066315B (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
US20210326838A1 (en) Processing mobile payments when disconnected from payment servers
CN111080275B (zh) 跨区域资源转移方法、装置、设备及存储介质
CN107103530A (zh) 一种银行个人多账户交易方法及系统
CN110032571A (zh) 业务流程处理方法、装置、存储介质及计算设备
WO2021031472A1 (zh) 智能合约处理方法、装置、计算机设备及存储介质
CN106548261A (zh) 一种业务流程控制方法、装置及电子设备
CN107258072A (zh) 聊天软件的对话内容管理方法和系统及记录介质
CN102165480B (zh) 通过短讯服务的移动银行服务
CN107067559A (zh) 一种实现充电桩互联充电的方法和装置
CN110363663A (zh) 基于区块链的数据批量处理方法、装置、设备及存储介质
AU2017301640B2 (en) Reprogrammable point of sale transaction flows
JPH09505918A (ja) 一群のデータからデータを抽出する方法および装置
CN107066315A (zh) 业务调用方法及装置
CN106530025A (zh) 一种移动开具发票的方法和装置
US20200082463A1 (en) Providing Augmented Reality User Interfaces and Controlling Back-Office Data Processing Systems Based on Augmented Reality Events
CN110348976A (zh) 基于交易流水的金融核心记账系统
CN107180344A (zh) 代充值方法、装置和系统
CN108521364A (zh) 公司内部即时通讯应用的红包发放方法及装置
CN110390512A (zh) 互联网金融管理方法、系统、存储介质及设备
CN109951756A (zh) 手表、耳机和扫描指环以及收派系统、方法和介质
CN109241110A (zh) 订单管理方法及系统、电子设备、存储介质
JP2019087025A (ja) 情報処理プログラム、方法、装置、及びシステム
JP2019087023A (ja) 情報処理プログラム、方法、装置、及びシステム
CN108040083A (zh) 银企直连通信的控制方法、相关设备及系统
CN107424038A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240221

Address after: Guohao Times City # 20-01, 128 Meizhi Road, Singapore

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands