并发模块、业务系统、预装配方法以及创建方法

文档序号:8445437阅读:631来源:国知局
并发模块、业务系统、预装配方法以及创建方法
【技术领域】
[0001]本发明涉及高并发系统与业务系统间的通信,特别涉及一种并发模块、业务系统、利用该并发模块实现的预装配方法以及利用该业务系统实现的创建方法。
【背景技术】
[0002]在高并发系统中,并发模块所生成的业务结果通常是无序地放在并发数据结构中,即不同类型的业务结果交错地存放在同一个地方。而业务系统通常要求在满足一定条件时,以一定的顺序处理高并发系统生成的业务结果。一般地,业务系统会直接到并发模块中去提取业务结果,再按一定的业务逻辑装配起来。
[0003]这种方式存在两个问题:业务系统的代码需要与并发性打交道,容易引入错误;其次,过多的线程参与竞争并发数据结构,导致性能变差,不利于系统调优。

【发明内容】

[0004]本发明要解决的技术问题是为了克服现有技术中高性能的业务系统直接处理高并发性操作,从而导致业务逻辑与高并发性逻辑互相影响、互相耦合的缺陷,提供一种并发模块、业务系统、预装配方法以及创建方法,解除业务系统与并发代码之间的高耦合性,将高并发性代码从业务系统中隔离出来,使得业务系统与并发模块之间以松散形式耦合,这样既有利于业务系统的未来扩展,也方便了对并发模块的调优。
[0005]本发明是通过下述技术方案来解决上述技术问题的:
[0006]本发明提供一种并发模块,其包括一处理单元和一并发队列,其特点在于,该并发模块还包括若干预装配单元、一第一判断单元和一第二判断单元,每一预装配单元均对应有唯一的识别信息和排序函数,且不同的预装配单元的识别信息互不相同,每一预装配单元用于预存储一唯一类型的业务结果且不同的预装配单元预存储的业务结果互不相同;
[0007]该处理单元用于从一数据源获取数据进行加工处理,并将生成的业务结果传输至该并发队列;
[0008]该第一判断单元用于判断该业务结果的类型,并将该业务结果从该并发队列转移至预存储该类型的业务结果的预装配单元;
[0009]该第二判断单元用于判断该业务结果转移至的预装配单元中的业务结果是否已经全部生成,若是则调用该业务结果转移至的预装配单元对应的排序函数,以使得该业务结果转移至的预装配单元中的所有业务结果按照该对应的排序函数进行排序。
[0010]在本方案中,并发模块在内部操作并发性,它不与实际的业务逻辑打交道,而只是把并发处理后得到的无序结果按业务系统的要求进行排序、分类后返回给业务系统,其内部的并发性处理沿用普通的多线程和并发程序设计技术即可。
[0011]本发明还提供一种业务系统,其特点在于,该业务系统包括一设置单元、一创建单元和一调用单元,该设置单元用于将业务结果划分为若干类型,并每种类型设有对应唯一的识别信息和排序函数,且不同的类型的识别信息互不相同;
[0012]该创建单元用于将所有类型以及每一类型对应的识别信息和排序函数的集合作为构造函数的参数创建一并发模块的实例,以使得该并发模块根据该些类型创建相应的预装配单元;
[0013]该调用单元用于调用该并发模块的输出接口以等待业务结果的返回。
[0014]本方案引入预装配的概念,由该业务系统中的创建单元将相关规则注入至该并发模块中,该并发模块根据规则动态维护相关的预装配单元,将并发操作封装在并发模块内部。该业务系统以传统的函数调用的方式获取有序的、满足业务需求的业务结果。这样一来,该业务系统的开发者可按照熟悉的函数调用的方式来获取并发处理的业务结果,而并发模块的开发者也不会过多地受业务逻辑的约束。
[0015]而且,该业务系统只需将业务结果的类型、顺序等的期待形式抽象化后注入到该并发模块中,而后调用该并发模块提供的接口函数,阻塞等待直至业务结果返回,该业务系统并不关心具体的并发处理过程。
[0016]本发明还提供一种预装配方法,其特点在于,其利用上述的并发模块实现,该预装配方法包括以下步骤:
[0017]S1、从该数据源获取数据进行加工处理,并将生成的业务结果传输至该并发队列;
[0018]S2、判断该业务结果的类型,并将该业务结果从该并发队列转移至预存储该类型的业务结果的预装配单元;
[0019]S3、判断该业务结果转移至的预装配单元中的业务结果是否已经全部生成,若是则调用该业务结果转移至的预装配单元对应的排序函数,以使得该业务结果转移至的预装配单元中的所有业务结果按照该对应的排序函数进行排序,若否则重复步骤s3。
[0020]本发明还提供一种创建方法,其特点在于,其利用上述的业务系统实现,该创建方法包括以下步骤:
[0021]S1、将业务结果划分为若干类型,并每种类型设有对应唯一的识别信息和排序函数,且不同的类型的识别信息互不相同;
[0022]S2、将所有类型以及每一类型对应的识别信息和排序函数的集合作为构造函数的参数创建该并发模块的实例,以使得该并发模块根据该些类型创建相应的预装配单元。
[0023]在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
[0024]本发明的积极进步效果在于:
[0025]本发明提供一种并发模块、业务系统、预装配方法以及创建方法,解除了业务系统与并发代码之间的高耦合性,将高并发性代码从业务系统中隔离出来,使得业务系统与并发模块之间以松散形式耦合,这样既有利于业务系统具有更好的扩展性和可维护性,也方便了对并发模块的调优,而不必过多考虑业务逻辑方面的需求。
【附图说明】
[0026]图1为本发明较佳实施例的业务系统的结构框图。
[0027]图2为本发明较佳实施例的并发模块的结构框图。
[0028]图3为本发明较佳实施例的预装配方法的流程图。
[0029]图4为本发明较佳实施例的创建方法的流程图。
【具体实施方式】
[0030]下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0031 ] 如图1所示,本实施例提供一种业务系统,其包括一设置单元11、一创建单元12和一调用单元13,该设置单元11用于将业务结果划分为若干类型,并每种类型设有对应唯一的识别信息和排序函数,且不同的类型的识别信息互不相同。
[0032]该创建单元12用于将所有类型以及每一类型对应的识别信息和排序函数的集合作为构造函数的参数创建一并发模块的实例,以使得该并发模块根据该些类型创建相应的预装配单元,这样该并发模块中就存在若干预装配单元。
[0033]该调用单元13用于调用该并发模块的输出接口以等待业务结果的返回。
[0034]如图2所示,本实施例还提供一种并发模块,其包括一处理单元21和一并发队列22、一第一判断单元23、一第二判断单元24和若干预装配单元25,每一预装配单元25均对应有唯一的识别信息和排序函数,且不同的预装配单元25的识别信息互不相同,每一预装配单元25用于预存储一唯一类型的业务结果且不同的预装配单元25预存储的业务结果互不相同。
[0035]该处理单元21用于从一数据源获取数据进行加工处理,并将生成的业务结果传输至该并发队列22。
[0036]该第一判断单元23用于判断该业务结果的类型,并将该业务结果从该并发队列22转移至预存储该类型的业务结果的预装配单元25 ;
[0037]该第二判断单元24用于判断该业务结果转移至的预装配单元中的业务结果是否已经全部生成,若是则调用该业务结果转移至的预装配单元25对应的排序函数,以使得该业务结果转移至的预装配单元中的所有业务结果按照该对应的排序函数进行排序。
[0038]而且,本实施例还提供一种预装配方法和一种创建方法,其中该预装配方法利用上述的并发模块实现,该创建方法利用上述的业务系统实现。
[0039]如图3所示,该预装配方法包括以下步骤:
[0040]步骤101、从该数据源获取数据进行加工处理,并将生
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1