一种基于微服务架构的分布式事务处理方法

    专利查询2022-07-07  188



    1.本发明涉及事务处理领域,尤其涉及一种基于微服务架构的分布式事务处理方法。


    背景技术:

    2.微服务是一种软件开发技术-面向服务的体系结构(soa)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于http的restful api),每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等,另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建。
    3.在微服务下,系统会拆分为若干个子系统,当一个实例需要跨过多子系统才能完成时候时,为了保证整个过程的一致性,此时需要使用分布式事务的一种解决方案。比如:典型的购物网站的下单支付流程,至少会涉及交易系统和支付系统,整个过程是必须保证强一致性。由于分布式事务中事务的参与者,支持事务的服务器,资源服务器以及事务管理器分别为了不同的系统的不同节点上,给分布式事务的实施带来了巨大的阻碍。
    4.现有技术中,基于微服务架构的事务处理方法的子项处理流程中一般采用直接对应的处理方式,需要使用者预先学习服务处理流程的类别,对于老幼人群的使用存在较高的使用门槛,不便于服务的推广和使用。


    技术实现要素:

    5.本发明的目的是为了解决现有技术中存在的缺点,而提出的一种基于微服务架构的分布式事务处理方法。
    6.为了实现上述目的,本发明采用了如下技术方案:
    7.一种基于微服务架构的分布式事务处理方法,包括业务管理单位、业务执行准备单位和业务执行单位,所述业务管理单位包括用于对业务消息进行接收和分配的业务接收单元、用以对业务初步处理状态进行记录的业务状态存储单元和用以对业务处理状态进行反馈的业务反馈单元,所述业务执行准备单位包括用以对业务内容进行分析的业务解析单元、用以判断业务能否被执行的能否执行判断单元、用以对业务内容进行具体分类的业务分类单元和用以针对业务内容进行匹配对应执行单元的执行单位匹配单元,所述业务执行单元包括对业务进行执行的业务执行单元和用以对业务执行结果进行反馈的业务执行结果反馈单元,还包括以下步骤:
    8.s1、所述业务接收单元接收业务信息,并且将业务信息传递给所述业务解析单元,由所述业务解析单元对业务信息内容进行解析;
    9.s2、然后再将业务信息以及解析内容传递给所述能否执行判断单元进行判断,判定为能执行时,再将业务信息传递给所述业务分类单元,由所述业务分类单元对业务信息
    进行分类;
    10.s3、分类后的业务信息传递给所述执行单位匹配单元,由其选择对应的所述业务执行单位;
    11.s4、业务信息传递给所述业务执行单元后进行执行,并且将执行结果传递给所述业务执行结果反馈单元。
    12.优选的,所述步骤s2中,当所述能否执行判断单元判断位不可执行时,将判断结果传递给业务状态存储单元,同时所述能否执行判断单元将判断结果传递给业务反馈单元,进行业务信息初步处理结果反馈。
    13.优选的,所述步骤s2中,将业务信息传递给所述业务分类单元的同时,所述能否执行判断单元将可处理的判断结果传递给业务状态存储单元进行存储,同时将判断结果传递给所述业务反馈单元进行业务信息初步处理结果反馈。
    14.优选的,预设所述能否执行判断单元的运作时长,在运作时长超过预设时长阈值时通过查询业务状态存储单元内的日志文件检测运作状态,同时中止执行判断,并通过业务反馈单元进行进程受阻反馈。
    15.优选的,在执行完成后,将所述业务反馈单元和业务执行结果反馈单元的执行信息进行同项整合,并进行存储。
    16.优选的,所述执行单位匹配单元内的执行单位类别信息为业务分类单元的匹配基准数据库。
    17.优选的,所述业务解析单元的内容分析基础基于执行单位类别信息建立。
    18.优选的,所述业务执行单元的类别信息为执行单位匹配单元的匹配数据库提供数据基础。
    19.本发明的有益效果为:
    20.1.本发明通过对基于微服务架构的分布式事务处理流程中的子项进行进一步的自我判断与分类,并且配合信息反馈的设计使得本发明可以进行自我检索与反馈,降低了使用者的使用门槛,使得本发明非常便于推广;
    21.2.业务状态存储单元接收来自能够执行判断单元的判断结果信息,并且以此为节点进行处理进度记录,生成日志文件,同时业务接收单元在业务信息接收时与业务状态存储单元进行单向交互,业务信息同步传递给业务状态存储单元进行存储,通过设计的能否执行判断单元,来对业务信息内容进行能否处理的判断,并且通过业务解析单元、业务分类单元和执行单位匹配单元来对业务内容进行解析、分类和匹配,对业务内容的处理更加合理和高效;
    22.3.通过将能否执行判断单元的输出信息进行反馈和存储,使得使用者方便了查看业务处理流程进度和及时接收到初步处理结果信息,对事务的处理更加高效;
    23.4.通过对能否执行判断单元的处理时长进行限定,降低了因业务信息超范围而导致判断分析时间过长,从而降低处理效率情况出现的概率;
    24.5.通过对业务执行单元、执行单位匹配单元、业务分类单元和业务解析单元的基础信息库进行基础信息同步,使得上述单元的基础信息库中的信息可以互相对应,避免因数据库内容不匹配而导致业务信息无法处理的情况出现。
    附图说明
    25.图1为本发明一种基于微服务架构的分布式事务处理方法的流程示意图。
    具体实施方式
    26.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
    27.实施例1
    28.如图1所示,一种基于微服务架构的分布式事务处理方法,包括业务管理单位、业务执行准备单位和业务执行单位,所述业务管理单位包括用于对业务消息进行接收和分配的业务接收单元、用以对业务初步处理状态进行记录的业务状态存储单元和用以对业务处理状态进行反馈的业务反馈单元,所述业务执行准备单位包括用以对业务内容进行分析的业务解析单元、用以判断业务能否被执行的能否执行判断单元、用以对业务内容进行具体分类的业务分类单元和用以针对业务内容进行匹配对应执行单元的执行单位匹配单元,所述业务执行单元包括对业务进行执行的业务执行单元和用以对业务执行结果进行反馈的业务执行结果反馈单元。
    29.本实施例中,业务状态存储单元接收来自能够执行判断单元的判断结果信息,并且以此为节点进行处理进度记录,生成日志文件,同时业务接收单元在业务信息接收时与业务状态存储单元进行单向交互,业务信息同步传递给业务状态存储单元进行存储,通过设计的能否执行判断单元,来对业务信息内容进行能否处理的判断,并且通过业务解析单元、业务分类单元和执行单位匹配单元来对业务内容进行解析、分类和匹配,对业务内容的处理更加合理和高效。
    30.实施例2
    31.如图1所示,一种基于微服务架构的分布式事务处理方法,还包括以下步骤:
    32.s1、所述业务接收单元接收业务信息,并且将业务信息传递给所述业务解析单元,由所述业务解析单元对业务信息内容进行解析。
    33.s2、然后再将业务信息以及解析内容传递给所述能否执行判断单元进行判断,判定为能执行时,再将业务信息传递给所述业务分类单元,由所述业务分类单元对业务信息进行分类,同时所述能否执行判断单元将可处理的判断结果传递给业务状态存储单元进行存储,同时将判断结果传递给所述业务反馈单元进行业务信息初步处理结果反馈;当所述能否执行判断单元判断位不可执行时,将判断结果传递给业务状态存储单元,同时所述能否执行判断单元将判断结果传递给业务反馈单元,进行业务信息初步处理结果反馈。
    34.s3、分类后的业务信息传递给所述执行单位匹配单元,由其选择对应的所述业务执行单位。
    35.s4、业务信息传递给所述业务执行单元后进行执行,并且将执行结果传递给所述业务执行结果反馈单元。
    36.本实施例中,通过将能否执行判断单元的输出信息进行反馈和存储,使得使用者方便了查看业务处理流程进度和及时接收到初步处理结果信息,对事务的处理更加高效。
    37.实施例3
    38.如图1所示,预设所述能否执行判断单元的运作时长,在运作时长超过预设时长阈
    值时通过查询业务状态存储单元内的日志文件检测运作状态,同时中止执行判断,并通过业务反馈单元进行进程受阻反馈。
    39.本实施例中,通过对能否执行判断单元的处理时长进行限定,降低了因业务信息超范围而导致判断分析时间过长,从而降低处理效率情况出现的概率。
    40.实施例4
    41.如图1所示,在执行完成后,将所述业务反馈单元和业务执行结果反馈单元的执行信息进行同项整合,并进行存储。
    42.本实施例中,方便管理者对业务信息处理的历史记录进行查看。
    43.实施例5
    44.如图1所示,所述执行单位匹配单元内的执行单位类别信息为业务分类单元的匹配基准数据库;所述业务解析单元的内容分析基础基于执行单位类别信息建立;所述业务执行单元的类别信息为执行单位匹配单元的匹配数据库提供数据基础。
    45.本实施例中,通过对业务执行单元、执行单位匹配单元、业务分类单元和业务解析单元的基础信息库进行基础信息同步,使得上述单元的基础信息库中的信息可以互相对应,避免因数据库内容不匹配而导致业务信息无法处理的情况出现。
    46.工作原理:本发明在使用时,首先由业务接收单元接收业务信息,然后将业务信息传递给业务解析单元,对业务信息进行解析后再传递给能否执行判断单元,能否执行判断单元对解析后的业务信息进行分析判断,超出业务执行单元类别范围的则判定为不能执行的业务信息,并且将判断信息传递给业务状态存储单元进行存储和业务反馈单元进行业务信息初步处理结果反馈,没有超出业务执行单元类别范围的则将业务信息传导给业务分类单元进行具体分类,分类完成后再由执行单位匹配单元进行对应业务执行单元匹配,匹配完成后由对应的业务执行单元进行业务信息处理,并且在处理完成后由业务执行结果反馈单元进行信息处理结果反馈;
    47.其中业务状态存储单元接收来自能够执行判断单元的判断结果信息,并且以此为节点进行处理进度记录,生成日志文件,同时业务接收单元在业务信息接收时与业务状态存储单元进行单向交互,业务信息同步传递给业务状态存储单元进行存储;
    48.其中能否执行判断单元内预设时间阈值,以其接收到来自业务解析单元的业务信息为时间始点开始计时,当其向外传递信息时停止计时,当其超过时间阈值仍未发送信息时则停止对业务信息的判断,并且向业务状态存储单元传递状态信息和业务反馈单元传递判断结果信息。
    49.对比例1
    50.本实施例与所提供的实施例1-5的方法大致相同,其主要区别在于:实施例1中未设置业务分类单元;
    51.对比例2
    52.本实施例与所提供的实施例1-5的方法大致相同,其主要区别在于:实施例3中未预设判断时长阈值。
    53.对比例3
    54.本实施例与所提供的实施例1-5的方法大致相同,其主要区别在于:实施例5中未以业务执行单元的类别信息作为执行单位匹配单元的匹配数据库提供数据基础。
    55.性能测试
    56.分别取等量的实施例1-5和对比例1~3所提供的基于微服务架构的分布式事务处理方法的准确性和处理效率:
    [0057] 准确性处理效率实施例199.9%99.9%对比例180%85%对比例290%50%对比例395%30%
    [0058]
    通过分析上述各表中的相关数据可知,通过本发明,
    [0059]
    一种基于微服务架构的分布式事务处理方法,包括业务管理单位、业务执行准备单位和业务执行单位,所述业务管理单位包括用于对业务消息进行接收和分配的业务接收单元、用以对业务初步处理状态进行记录的业务状态存储单元和用以对业务处理状态进行反馈的业务反馈单元,所述业务执行准备单位包括用以对业务内容进行分析的业务解析单元、用以判断业务能否被执行的能否执行判断单元、用以对业务内容进行具体分类的业务分类单元和用以针对业务内容进行匹配对应执行单元的执行单位匹配单元,所述业务执行单元包括对业务进行执行的业务执行单元和用以对业务执行结果进行反馈的业务执行结果反馈单元,预设所述能否执行判断单元的运作时长,在运作时长超过预设时长阈值时通过查询业务状态存储单元内的日志文件检测运作状态,同时中止执行判断,并通过业务反馈单元进行进程受阻反馈,在执行完成后,将所述业务反馈单元和业务执行结果反馈单元的执行信息进行同项整合,并进行存储,方便管理者对业务信息处理的历史记录进行查看,所述执行单位匹配单元内的执行单位类别信息为业务分类单元的匹配基准数据库;所述业务解析单元的内容分析基础基于执行单位类别信息建立;所述业务执行单元的类别信息为执行单位匹配单元的匹配数据库提供数据基础;
    [0060]
    其中业务状态存储单元接收来自能够执行判断单元的判断结果信息,并且以此为节点进行处理进度记录,生成日志文件,同时业务接收单元在业务信息接收时与业务状态存储单元进行单向交互,业务信息同步传递给业务状态存储单元进行存储,通过设计的能否执行判断单元,来对业务信息内容进行能否处理的判断,并且通过业务解析单元、业务分类单元和执行单位匹配单元来对业务内容进行解析、分类和匹配,对业务内容的处理更加合理和高效,并且通过对能否执行判断单元的处理时长进行限定,降低了因业务信息超范围而导致判断分析时间过长,从而降低处理效率情况出现的概率,而且通过对业务执行单元、执行单位匹配单元、业务分类单元和业务解析单元的基础信息库进行基础信息同步,使得上述单元的基础信息库中的信息可以互相对应,避免因数据库内容不匹配而导致业务信息无法处理的情况出现。
    [0061]
    并且本发明还包括以下步骤:
    [0062]
    s1、所述业务接收单元接收业务信息,并且将业务信息传递给所述业务解析单元,由所述业务解析单元对业务信息内容进行解析。
    [0063]
    s2、然后再将业务信息以及解析内容传递给所述能否执行判断单元进行判断,判定为能执行时,再将业务信息传递给所述业务分类单元,由所述业务分类单元对业务信息进行分类,同时所述能否执行判断单元将可处理的判断结果传递给业务状态存储单元进行
    存储,同时将判断结果传递给所述业务反馈单元进行业务信息初步处理结果反馈;当所述能否执行判断单元判断位不可执行时,将判断结果传递给业务状态存储单元,同时所述能否执行判断单元将判断结果传递给业务反馈单元,进行业务信息初步处理结果反馈。
    [0064]
    s3、分类后的业务信息传递给所述执行单位匹配单元,由其选择对应的所述业务执行单位。
    [0065]
    s4、业务信息传递给所述业务执行单元后进行执行,并且将执行结果传递给所述业务执行结果反馈单元。
    [0066]
    上述设计通过将能否执行判断单元的输出信息进行反馈和存储,使得使用者方便了查看业务处理流程进度和及时接收到初步处理结果信息,对事务的处理更加高效。
    [0067]
    以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
    转载请注明原文地址:https://tc.8miu.com/read-811.html

    最新回复(0)