CN113326026A - 一种微服务业务流程接口的生成方法与终端 - Google Patents

一种微服务业务流程接口的生成方法与终端 Download PDF

Info

Publication number
CN113326026A
CN113326026A CN202110510006.3A CN202110510006A CN113326026A CN 113326026 A CN113326026 A CN 113326026A CN 202110510006 A CN202110510006 A CN 202110510006A CN 113326026 A CN113326026 A CN 113326026A
Authority
CN
China
Prior art keywords
execution unit
interface
annotation
business process
generated
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
CN202110510006.3A
Other languages
English (en)
Other versions
CN113326026B (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.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology 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 Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN202110510006.3A priority Critical patent/CN113326026B/zh
Publication of CN113326026A publication Critical patent/CN113326026A/zh
Application granted granted Critical
Publication of CN113326026B publication Critical patent/CN113326026B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种微服务业务流程接口的生成方法与终端;本发明根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口;本发明通过预设注解对各微服务的方法进行标注,能够根据开发人员提供的注解信息,对聚合/组合类接口所需的业务流程进行自动拼接,让开发人员更专注于组件领域原子性开发,减少聚合、组合类代码硬编码,减少开发成本。

Description

一种微服务业务流程接口的生成方法与终端
技术领域
本发明涉及信息技术领域,特别涉及一种微服务业务流程接口的生成方法与终端。
背景技术
在大中台、小前台的微服务架构下,大中台按照不同的领域进行拆分成相应的微服务,小前台依赖大中台的微服务快速生产出新的产品或项目。但现有的项目开发总有利用大中台的各微服务能力组装出新的业务流程的需求。如近期在实施某教育产品的过程中,对教务升级操作,不仅仅需要处理年级信息的升级,升级成功后还需要解散本年级下的班级,初始化学年、学期信息,重新进行编班等功能。通常情况下,大家通过编码方式,定义业务流程接口,并对业务接口按需求进行开发,然而这种编码方式将导致业务服务的接口的功能越来越多,增加了***的资源投入,也不利于后期的运维。再进一步,业务可引入Conductor(一种开源微服务编排框架)进行微服务任务编排,但Conductor接入成本较大,如:需要开发人员在Conductor管理后台配置对应的业务流程,功能上有冲突时,需要修改其源码;在扩展性上,该编排能力没提供单个任务执行完成后的回调,不利于业务扩展;而且Conductor包括了较多的模块,并且依赖了较多的网元,如:Conductor持久化模块使用Dynomite(一种分布式存储代理层),Elasticsearch(一个分布式和RESTful风格的搜索和数据分析引擎)用于索引后端,大大降低了***的可用性。
发明内容
本发明所要解决的技术问题是:提供一种微服务业务流程接口的生成方法与终端,不需要进行Conductor的引入且能够自动生成业务所需的聚合/组合类接口。
为了解决上述技术问题,本发明采用的技术方案为:
一种微服务业务流程接口的生成方法,包括:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种微服务业务流程接口的生成终端,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
本发明的有益效果在于:本发明不需要进行Conductor的引入,通过预设注解对各微服务的方法进行标注,使得***能够根据开发人员提供的待生成接口的注解信息和各个方法的注解信息,对聚合/组合类接口所需的业务流程进行自动拼接,让开发人员更专注于组件领域原子性开发,减少聚合、组合类代码硬编码,减少开发成本。
附图说明
图1为本发明实施例的一种微服务业务流程接口的生成方法的流程图;
图2为本发明实施例的一种微服务业务流程接口的生成终端的结构图;
图3为本发明实施例的一种微服务业务流程接口的生成方法的接口流程处理示意图;
标号说明:
1、一种微服务业务流程接口的生成终端;2、处理器;3、存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1和图3,一种微服务业务流程接口的生成方法,包括:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
从上述描述可知,本发明的有益效果在于:本发明不需要进行Conductor的引入,通过预设注解对各微服务的方法进行标注,使得***能够根据开发人员提供的待生成接口的注解信息和各个方法的注解信息,对聚合/组合类接口所需的业务流程进行自动拼接,让开发人员更专注于组件领域原子性开发,减少聚合、组合类代码硬编码,减少开发成本。
进一步地,所述预设注解的注解属性包括执行单元名称、下级执行单元名称、参数转换函数、执行完成阶段类型、根任务属性以及执行单元完成回调函数;
所述步骤S2具体为:
获取用户为待生成接口定义的所述预设注解的所述根任务属性,判断所述待生成接口是否为根任务,若是则根据所述下级执行单元名称选择对应的所述执行单元并拼接生成上下级业务流程链表,否则不进行处理。
由上述描述可知,注解属性包括下级执行单元名称、根任务属性、用于区分执行单元的执行单元名称、用于定义下一级执行单元输入参数的参数转换函数、用于定义多级执行完成状态类型的执行完成阶段类型以及定义执行单元完成后业务回调处理的执行单元完成回调函数,能够满足开发和运行需求;在生成上下级任务链表前,判断待生成接口是否为根任务,若为根任务,则根据下级执行单元名称得到下一级执行单元,以链表的形式进行任务流程的拼接,直到没有下一级执行单元,从而得到上下级业务流程链表。
进一步地,所述步骤S1中所述将标识有预设注解的方法添加到执行单元列表具体为:
获取标识有预设注解的方法的信息,并按照键值对的方式添加到执行单元列表中,所述键值对中的键为方法名称,且值为所述方法的所述预设注解对应的注解对象,所述注解对象包含所述预设注解的所述注解属性。
由上述描述可知,每个执行单元均包含注解对象,用于根据注解对象的注解属性来完成后续步骤。
进一步地,所述步骤S2和所述步骤S3之间还包括:
S21、对所述上下级业务流程链表进行校验,判断是否符合有向无环的处理逻辑,若是则进入步骤S3,否则返回错误信息。
由上述描述可知,在业务流程链表生成后,需要对其进行有向无环的逻辑判断,从而保证业务流程能够依次执行,不会发生在几个流程间无限循环流转的问题。
进一步地,所述步骤S1还包括:
S11、根据所述注解属性中的所述下级执行单元名称区分主干单元、分支单元和并行单元,并确定所述下一级处理汇聚点,将所述下一级处理汇聚点添加到所述注解对象中;
所述步骤S3之后还包括:
S4、接收所述待生成接口的访问请求,启动任务编排事件,生成抽象执行单元,通过所述抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元。
由上述描述可知,根据下级执行单元名称能够区分出主干单元、分支单元和并行单元,以及下一级处理汇聚点,在访问待生成接口时,通过生成抽象执行单元,逐级对上下级业务流程中的执行单元进行处理,从而有逻辑且完整地对业务流程进行处理。
请参照图2,一种微服务业务流程接口的生成终端,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
从上述描述可知,本发明的有益效果在于:本发明不需要进行Conductor的引入,通过预设注解对各微服务的方法进行标注,使得***能够根据开发人员提供的待生成接口的注解信息和各个方法的注解信息,对聚合/组合类接口所需的业务流程进行自动拼接,让开发人员更专注于组件领域原子性开发,减少聚合、组合类代码硬编码,减少开发成本。
进一步地,所述预设注解的注解属性包括执行单元名称、下级执行单元名称、参数转换函数、执行完成阶段类型、根任务属性以及执行单元完成回调函数;
所述步骤S2具体为:
获取用户为待生成接口定义的所述预设注解的所述根任务属性,判断所述待生成接口是否为根任务,若是则根据所述下级执行单元名称选择对应的所述执行单元并拼接生成上下级业务流程链表,否则不进行处理。
由上述描述可知,注解属性包括下级执行单元名称、根任务属性、用于区分执行单元的执行单元名称、用于定义下一级执行单元输入参数的参数转换函数、用于定义多级执行完成状态类型的执行完成阶段类型以及定义执行单元完成后业务回调处理的执行单元完成回调函数,能够满足开发和运行需求;在生成上下级任务链表前,判断待生成接口是否为根任务,若为根任务,则根据下级执行单元名称得到下一级执行单元,以链表的形式进行任务流程的拼接,直到没有下一级执行单元,从而得到上下级业务流程链表。
进一步地,所述步骤S1中所述将标识有预设注解的方法添加到执行单元列表具体为:
获取标识有预设注解的方法的信息,并按照键值对的方式添加到执行单元列表中,所述键值对中的键为方法名称,且值为所述方法的所述预设注解对应的注解对象,所述注解对象包含所述预设注解的所述注解属性。
由上述描述可知,每个执行单元均包含注解对象,用于根据注解对象的注解属性来完成后续步骤。
进一步地,所述处理器执行所述计算机程序时所述步骤S2和所述步骤S3之间还包括:
S21、对所述上下级业务流程链表进行校验,判断是否符合有向无环的处理逻辑,若是则进入步骤S3,否则返回错误信息。
由上述描述可知,在业务流程链表生成后,需要对其进行有向无环的逻辑判断,从而保证业务流程能够依次执行,不会发生在几个流程间无限循环流转的问题。
进一步地,所述处理器执行所述计算机程序时所述步骤S1还包括:
S11、根据所述注解属性中的所述下级执行单元名称区分主干单元、分支单元和并行单元,并确定所述下一级处理汇聚点,将所述下一级处理汇聚点添加到所述注解对象中;
所述步骤S3之后还包括:
S4、接收所述待生成接口的访问请求,启动任务编排事件,生成抽象执行单元,通过所述抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元。
由上述描述可知,根据下级执行单元名称能够区分出主干单元、分支单元和并行单元,以及下一级处理汇聚点,在访问待生成接口时,通过生成抽象执行单元,逐级对上下级业务流程中的执行单元进行处理,从而有逻辑且完整地对业务流程进行处理。
请参照图1和图3,本发明的实施例一为:
一种微服务业务流程接口的生成方法,包括:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
所述预设注解的注解属性包括执行单元名称、下级执行单元名称、参数转换函数、执行完成阶段类型、根任务属性以及执行单元完成回调函数;
所述步骤S1中所述将标识有预设注解的方法添加到执行单元列表具体为:
获取标识有预设注解的方法的信息,并按照键值对的方式添加到执行单元列表中,所述键值对中的键为方法名称,且值为所述方法的所述预设注解对应的注解对象,所述注解对象包含所述预设注解的所述注解属性;
所述步骤S1还包括:
S11、根据所述注解属性中的所述下级执行单元名称区分主干单元、分支单元和并行单元,并确定所述下一级处理汇聚点,将所述下一级处理汇聚点添加到所述注解对象中。
本实施例中,预设注解为@marshal,在其他等同实施例中,开发者可以通过自定义注解的方式,在符合注解命名规则的情况下自由命名,并在预设框架进行相应配置即可。
@marshal注解包含如下注解属性:
name(执行单元名称):定义业务组件具体功能的名称,为执行单元的拼接提供支持;
next(下级执行单元名称):通过定义下一级执行单元名称(可多选),明确业务的执行流程;
paramFunction(参数转换函数):定义下级执行单元输入参数转换函数;
completionStage(执行完成阶段类型):定义多级执行的完成状态类型;支持任一一个完成处理(anyof)和全部完成处理(allof);
root(根任务属性):定义执行任务是否为根任务,当执行单元定义为根任务时,框架启动时将通过根任务拼装出该业务执行流程;
callback(执行单元完成回调函数):定义执行单元完成后的业务回调处理。
本实施例中,工程启动时,将会扫描工程内所有方法,将带有@marshal的注解,按照kv(key-value)方式加载到执行单元列表中,其中k为name,v为marshal对象。以某教育产品为例,通过扫描得到如下执行单元:
@Marshal
(name="archiveClass",next="initAcademicYear",paramFunction="successUpgradeFunction")
eduAdminArchiveClass()
//归档教学班
@Marshal
(name="archiveTeachingClass",next="initAcademicYear",paramFunction="successUpgradeFunction")
eduAdminArchiveTeachingClass()
//初始化学年
@Marshal(name="initAcademicYear",next="initSemester")
eduAdminInitAcademicYear()
//初始化学期
@Marshal(name="initSemester")
eduAdminInitSemester()
本实施例中,待生成接口为schoolUpgrade的接口,因此开发者对待生成接口作出如下定义:
@Marshal
(name="schoolUpgrade",next="archiveClass,archiveTeachingClass",completionStage="allOf",root=true,callback="upgradeCallbackConsumer")
eduAdminUpgrade()
//归档行政班
***根据next(下级执行单元名称)属性确定各个执行单元的主干和分支处理逻辑,并确定下一级处理汇聚点,将下一级处理汇聚点记录到marshal中。以待生成接口为例,待生成接口的下级执行单元包括archiveClass和archiveTeachingClass,而由archiveClass和archiveTeachingClass的下级执行单元均为initAcademicYear可以确定下一级处理汇聚点为initAcademicYear执行单元,将其记录到marshal对象中,并确定主干处理逻辑为:
archiveClass和archiveTeachingClass→initAcademicYear→initSemester,无分支处理逻辑。
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
所述步骤S2具体为:
获取用户为待生成接口定义的所述预设注解的所述根任务属性,判断所述待生成接口是否为根任务,若是则根据所述下级执行单元名称选择对应的所述执行单元并拼接生成上下级业务流程链表,否则不进行处理。
所述步骤S2和所述步骤S3之间还包括:
S21、对所述上下级业务流程链表进行校验,判断是否符合有向无环的处理逻辑,若是则进入步骤S3,否则返回错误信息。
本实施例中,获取待生成接口schoolUpgrade的根任务属性root,而root为true,因此根据next(下级执行单元名称)选择对应的执行单元拼接成上下级业务流程链表,并进行有向无环的校验。
有向无环的校验具体为:遍历每条path(起始节点到结束节点之间的路径称之为path),查看path中有没有重复的点。如果有重复的点,则有环,没有重复的节点,则没有环。本实施例中,起始节点到结束节点之间的路径path存在两条,分别为:
开始→archiveTeachingClass→initAcademicYear→initSemester以及开始→archiveClass→initAcademicYear→initSemester,每条path中均无重复的点,即重复执行的执行单元,因此符合有向无环的处理逻辑。
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
本实施例中,根据执行单元archiveTeachingClass和archiveClass的输入信息以及执行单元initSemester的输出信息,生成待生成接口schoolUpgrade,并在控制台打印出生成的接口。
所述步骤S3之后还包括:
S4、接收所述待生成接口的访问请求,启动任务编排事件,生成抽象执行单元,通过所述抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元。
本实施例中,在用户访问schoolUpgrade接口时,启动任务编排事件,预设框架采用模板模式,抽象出一层抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元,同时负责根据callback(执行单元完成回调函数)执行完成回调,统一异常处理等公共逻辑。其处理执行单元时可能结构化出4中任务处理单元,包括:
执行主干任务单元:基于同步方式执行主干任务单元;
执行分支任务单元:基于异步方式执行分支单元,仅当业务需要结果时才阻塞返回结果数据;
执行并行主干单元:基于同步方式执行并行单元,依赖completionStage(执行完成阶段类型),处理并行任务的策略,并同时同步执行依赖的汇聚点;
执行并行分支单元,基于异步方式执行并行单元,依赖completionStage(执行完成阶段类型),处理并行任务的策略,并同时异步执行依赖的汇聚点,仅当业务需要结果时才阻塞返回结果数据。
请参照图2,本发明的实施例二为:
一种微服务业务流程接口的生成终端1,包括处理器2、存储器3及存储在存储器3上并可在处理器2上运行的计算机程序,所述处理器2执行所述计算机程序时实现以上实施例一中的步骤。
综上所述,本发明提供的一种微服务业务流程接口的生成方法与终端,不需要进行Conductor的引入,通过预设注解对各微服务的方法进行标注,轻量级、依赖极少,资源损耗少,且注解属性包含多个内容,能够满足开发和运行需求;***能够根据开发人员提供的待生成接口的注解信息和各个方法的注解信息,对聚合/组合类接口所需的业务流程进行自动拼接,让开发人员更专注于组件领域原子性开发,减少聚合、组合类代码硬编码,减少开发成本;进行了有向无环的校验,使得业务流程不会出现重复执行的情况;支持串行、并行、依赖、阻塞等待等多种场景,适用性广,且提供回调功能,支持业务流程额外的扩展。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种微服务业务流程接口的生成方法,其特征在于,包括:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
2.根据权利要求1所述的一种微服务业务流程接口的生成方法,其特征在于,所述预设注解的注解属性包括执行单元名称、下级执行单元名称、参数转换函数、执行完成阶段类型、根任务属性以及执行单元完成回调函数;
所述步骤S2具体为:
获取用户为待生成接口定义的所述预设注解的所述根任务属性,判断所述待生成接口是否为根任务,若是则根据所述下级执行单元名称选择对应的所述执行单元并拼接生成上下级业务流程链表,否则不进行处理。
3.根据权利要求1所述的一种微服务业务流程接口的生成方法,其特征在于,所述步骤S1中所述将标识有预设注解的方法添加到执行单元列表具体为:
获取标识有预设注解的方法的信息,并按照键值对的方式添加到执行单元列表中,所述键值对中的键为方法名称,且值为所述方法的所述预设注解对应的注解对象,所述注解对象包含所述预设注解的所述注解属性。
4.根据权利要求1所述的一种微服务业务流程接口的生成方法,其特征在于,所述步骤S2和所述步骤S3之间还包括:
S21、对所述上下级业务流程链表进行校验,判断是否符合有向无环的处理逻辑,若是则进入步骤S3,否则返回错误信息。
5.根据权利要求2所述的一种微服务业务流程接口的生成方法,其特征在于,所述步骤S1还包括:
S11、根据所述注解属性中的所述下级执行单元名称区分主干单元、分支单元和并行单元,并确定所述下一级处理汇聚点,将所述下一级处理汇聚点添加到所述注解对象中;
所述步骤S3之后还包括:
S4、接收所述待生成接口的访问请求,启动任务编排事件,生成抽象执行单元,通过所述抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元。
6.一种微服务业务流程接口的生成终端,其特征在于,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1、根据预设框架,扫描工程内的所有方法,并将标识有预设注解的方法添加到执行单元列表;
S2、获取用户为待生成接口定义的所述预设注解的注解属性,根据所述注解属性选择对应的所述执行单元并拼接生成上下级业务流程链表;
S3、获取所述待生成接口的输入信息以及所述上下级业务流程链表末端的所述执行单元的输出信息,根据所述输入信息和所述输出信息生成所述待生成接口。
7.根据权利要求6所述的一种微服务业务流程接口的生成终端,其特征在于,所述预设注解的注解属性包括执行单元名称、下级执行单元名称、参数转换函数、执行完成阶段类型、根任务属性以及执行单元完成回调函数;
所述步骤S2具体为:
获取用户为待生成接口定义的所述预设注解的所述根任务属性,判断所述待生成接口是否为根任务,若是则根据所述下级执行单元名称选择对应的所述执行单元并拼接生成上下级业务流程链表,否则不进行处理。
8.根据权利要求7所述的一种微服务业务流程接口的生成终端,其特征在于,所述步骤S1中所述将标识有预设注解的方法添加到执行单元列表具体为:
获取标识有预设注解的方法的信息,并按照键值对的方式添加到执行单元列表中,所述键值对中的键为方法名称,且值为所述方法的所述预设注解对应的注解对象,所述注解对象包含所述预设注解的所述注解属性。
9.根据权利要求6所述的一种微服务业务流程接口的生成终端,其特征在于,所述处理器执行所述计算机程序时所述步骤S2和所述步骤S3之间还包括:
S21、对所述上下级业务流程链表进行校验,判断是否符合有向无环的处理逻辑,若是则进入步骤S3,否则返回错误信息。
10.根据权利要求6所述的一种微服务业务流程接口的生成终端,其特征在于,所述处理器执行所述计算机程序时步骤S1之后还包括:
S11、根据所述注解属性中的所述下级执行单元名称区分主干单元、分支单元和并行单元,并确定所述下一级处理汇聚点,将所述下一级处理汇聚点添加到所述注解对象中;
所述步骤S3之后还包括:
S4、接收所述待生成接口的访问请求,启动任务编排事件,生成抽象执行单元,通过所述抽象执行单元,逐级对所述待生成接口的所述上下级业务流程链表中的所述执行单元进行处理,直至无下一级的所述执行单元。
CN202110510006.3A 2021-05-11 2021-05-11 一种微服务业务流程接口的生成方法与终端 Active CN113326026B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110510006.3A CN113326026B (zh) 2021-05-11 2021-05-11 一种微服务业务流程接口的生成方法与终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110510006.3A CN113326026B (zh) 2021-05-11 2021-05-11 一种微服务业务流程接口的生成方法与终端

Publications (2)

Publication Number Publication Date
CN113326026A true CN113326026A (zh) 2021-08-31
CN113326026B CN113326026B (zh) 2023-09-08

Family

ID=77415255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110510006.3A Active CN113326026B (zh) 2021-05-11 2021-05-11 一种微服务业务流程接口的生成方法与终端

Country Status (1)

Country Link
CN (1) CN113326026B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115658018A (zh) * 2022-10-20 2023-01-31 广东云徙智能科技有限公司 一种中台逻辑扩展方法、***、装置及介质
CN115712499A (zh) * 2022-11-09 2023-02-24 北京城建设计发展集团股份有限公司 一种轨交业务ai芯片驱动任务处理方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108924185A (zh) * 2018-06-01 2018-11-30 中铁程科技有限责任公司 接口生成方法及装置
CN109634569A (zh) * 2018-12-13 2019-04-16 深圳前海微众银行股份有限公司 基于注解的流程实现方法、装置、设备及可读存储介质
CN110955534A (zh) * 2019-10-10 2020-04-03 荣邦科技有限公司 一种基于中间件的业务流程自动化***及方法
CN111078315A (zh) * 2019-12-12 2020-04-28 拉扎斯网络科技(上海)有限公司 微服务编排、执行方法及***、架构、设备、存储介质
US20200311057A1 (en) * 2019-03-28 2020-10-01 International Business Machines Corporation Accuracy of qa systems by normalizing logical queries
CN112418784A (zh) * 2020-11-11 2021-02-26 北京京航计算通讯研究所 一种服务的编排执行***及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108924185A (zh) * 2018-06-01 2018-11-30 中铁程科技有限责任公司 接口生成方法及装置
CN109634569A (zh) * 2018-12-13 2019-04-16 深圳前海微众银行股份有限公司 基于注解的流程实现方法、装置、设备及可读存储介质
US20200311057A1 (en) * 2019-03-28 2020-10-01 International Business Machines Corporation Accuracy of qa systems by normalizing logical queries
CN110955534A (zh) * 2019-10-10 2020-04-03 荣邦科技有限公司 一种基于中间件的业务流程自动化***及方法
CN111078315A (zh) * 2019-12-12 2020-04-28 拉扎斯网络科技(上海)有限公司 微服务编排、执行方法及***、架构、设备、存储介质
CN112418784A (zh) * 2020-11-11 2021-02-26 北京京航计算通讯研究所 一种服务的编排执行***及方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115658018A (zh) * 2022-10-20 2023-01-31 广东云徙智能科技有限公司 一种中台逻辑扩展方法、***、装置及介质
CN115658018B (zh) * 2022-10-20 2023-08-08 广东云徙智能科技有限公司 一种中台逻辑扩展方法、***、装置及介质
CN115712499A (zh) * 2022-11-09 2023-02-24 北京城建设计发展集团股份有限公司 一种轨交业务ai芯片驱动任务处理方法及***

Also Published As

Publication number Publication date
CN113326026B (zh) 2023-09-08

Similar Documents

Publication Publication Date Title
US7716254B2 (en) System for modeling architecture for business systems and methods thereof
US6182245B1 (en) Software test case client/server system and method
US7739267B2 (en) Classification and sequencing of mixed data flows
US9305109B2 (en) Method and system of adapting a data model to a user interface component
CN102341781B (zh) 软件测试台生成
US7689582B2 (en) Data flow system and method for heterogeneous data integration environments
US6415396B1 (en) Automatic generation and maintenance of regression test cases from requirements
EP1387305B1 (fr) Procédé et systeme d'établissement automatique d'un modèle global de simulation d'une architecture
CN111104106A (zh) 集成业务流程与通讯报文的可视化开发方法、***及介质
CN113326026A (zh) 一种微服务业务流程接口的生成方法与终端
CN106910045A (zh) 工作流引擎设计方法及***
CN111784108A (zh) 一种主数据管理平台的建模方法和装置
CN117112060A (zh) 组件库构建方法、装置、电子设备及存储介质
US8244869B2 (en) System and method for starting server services
US11182137B2 (en) Techniques for approximate neighbor selection in tree models for computing co-occurrence
CN113760733A (zh) 一种单元测试方法和装置
CN117453980A (zh) 元数据管理、配置页面生成方法、服务器及存储介质
US20090254896A1 (en) Simplifying Bundling Of Fixes Used To Resolve Errors In Pre-Installed Software
CN113704123B (zh) 接口测试方法、装置、设备以及存储介质
CN115330171A (zh) 业务流程控制方法、装置、计算机设备及可读存储介质
CN114519071A (zh) 规则匹配模型的生成方法、匹配方法、***、设备和介质
US8000451B1 (en) System and method for managing network switch transaction dependencies
CN112363700A (zh) 智能合约的协同创建方法、装置、计算机设备和存储介质
WO2023157202A1 (ja) 管理システム、管理方法及び管理プログラム
CN117435177B (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