一种报文预知方法及系统的制作方法

文档序号:7801326阅读:125来源:国知局
专利名称:一种报文预知方法及系统的制作方法
技术领域
本发明属于应用系统之间的数据交互技术领域,具体涉及一种报文预知方法及系统。
背景技术
在金融业务系统中,两个完全独立的系统常常需要进行数据交互,在两个系统之间通常会存在接口系统,用于完成两个系统之间的通讯、报文转换、安全等等功能。在报文转换这一部分有编码和配置化两种实现方式。配置化方式有着编码方式没有的灵活性,配置参数信息种类越多证明系统的灵活性越高,系统的可维护性、适用性越高。目前配置参数存在多种存储方式,常用的有数据库表、环境变量、进程内存、文件、共享内存等。每种方式都有各自的特点。数据库表存储方式有存储量大、更新灵活、读取速度较慢、适用范围广的特点;环境变量有存储量小、无法实时更新、读取速度快、受众面广等特点;进程内存有存储量适中、无法实时更新、读取速度快、适用范围有限(仅限于进程自身)的特点;文件有存储量大、无法实时更新、读取速度慢、适用范围广等特点;共享内存有存储量较大、更新灵活、读取速度快、适用范围广等特点。通过上面的描述可以看到共享内存方式综合了数据库表、环境变量、进程内存、文件等方式的优点,是目前配置参数较好的存储方式。但是,当配置参数种类、数量增多时,如果还是在系统运行过程中进行参数的分析、查找,那么每一次运行过程中都要进行重复的分析、查找过程,势必会造成查找时间过长的问题,导致系统运行的速度会随着配置参数信息的增加而下降的问题。共享内存方式存储配置参数信息目前来看作为最合适的存储方式,为了解决系统运行过程中配置参数信息重复的分析、查找动作,减少系统运行时间,达到优化系统的目的,提出报文预知技术。作为计算机系统的系统运行软件,一般分为资源初始化、运行、资源释放等三个阶段。资源初始化阶段会建立共享内存,将其他存储方式中的配置参数信息写入共享内存,同时建立各类配置参数信息之间的关联关系。这样就减少了在系统运行过程中的对于各种配置参数信息的查找,减少系统在配置参数信息处理上运算时间。配置参数信息分为交易报文信息和交易字段信息两类数据,每个交易报文都有自己特定的交易字段和交易字段转换关系。在系统资源初始化阶段,将配置参数信息写入共享内存,按照交易报文信息顺序,将交易字段信息写入共享内存。在系统运行阶段,获取当前运行的交易报文信息,在共享内存中查找该交易报文对应的交易字段信息,逐个对交易字段信息进行转换操作。在查找交易字段信息时多采用顺序查找方式进行,最差的情况是需要遍历所有交易字段信息。由于配置参数信息只分为交易报文信息和交易字段信息两类,因此配置参数信息无法建立完备、高效的索引关系。在系统资源初始化阶段,只是简单地将配置参数信息顺序写入共享内存,完成配置参数信息由一种存储方式转换到另一种存储方式,没有对配置参数信息进行必要的预分析处理。在系统运行阶段,在获取到交易报文信息后,还需要在共享内存中通过顺序查找方式获取该交易报文信息相关的交易字段信息,效率低、时间长。无配置信息选择模式,所有相关配置信息无法进行准确的过滤、选择,全部配置信息都要处理。

发明内容
针对现有技术中存在的缺陷,本发明所要解决的技术问题是提供一种配置参数信息准确、有效的报文预知方法及系统。为解决上述技术问题,本发明采用的技术方案如下一种资源初始化阶段配置参数信息的存储方法,包括以下步骤
将所述配置参数信息进行分级;先将第一级信息写入共享内存;然后将隶属于所述第一级信息的所有第二级信息写入共享内存,同时将第二级信息在共享内存中的区间写入所述第一级信息中;再将隶属于所述第二级信息的第三级信息写入共享内存,同时将第三级信息在共享内存中的区间写入交易信息中;依此类推,直到最后一级信息存储完毕。如上所述的资源初始化阶段配置参数信息的存储方法,优选的,将所述配置参数信息分为五类,分别为渠道信息、交易信息、报文信息、报文转换信息、字段信息,所述字段信息包括报文对照信息;所述五类信息共分为四个等级,按照级别由高到低的顺序分别为渠道信息、交易信息、报文信息和报文转换信息、字段信息。如上所述的资源初始化阶段配置参数信息的存储方法,优选的,所述渠道信息、报文信息、字段信息和报文对照信息采用顺序存储方式;所述交易信息采用散列存储和顺序存储混合方式。如上所述的资源初始化阶段配置参数信息的存储方法,优选的,在配置参数信息写入共享内存的同时进行配置参数隶属关系确认操作,完成上级参数信息确认下级参数信息在存储空间的位置。如上所述的资源初始化阶段配置参数信息的存储方法,优选的,所述隶属关系有两种一种是字段属于报文、报文属于交易、交易属于渠道;另一种是报文对照属于交易、交易属于渠道。如上所述的资源初始化阶段配置参数信息的存储方法,优选的,还包括设置报文信息和字段信息的激活表达式,通过所述激活表达式确认需要的配置参数信息,过滤不符合处理条件的配置参数信息,定位参数信息的具体位置的步骤。一种运行阶段配置参数信息的读取方法,包括以下步骤(1)循环读取共享内存中的渠道信息;判断共享内存中是否有渠道信息,如是,则读取渠道信息后进入下一步;否则,解析激活表达式后结束;(2)循环读取共享内存中的交易信息;判断共享内存中是否有交易信息,如是,则读取交易信息后进入下一步;否则,转至步骤⑴;(3)循环读取共享内存中的报文转换信息;判断共享内存中是否有报文转换信息,如是,则循环读取报文转换信息;否则,进入下一步;(4)循环读取共享内存中的报文信息;判断共享内存中是否有报文信息,如是,则读取报文信息后进入下一步;否则,转至步骤⑵;(5)循环读取共享内存中的字段信息;判断共享内存中是否有字段信息,如是,则读取字段信息后进入下一步;否则,转至步骤。如上所述的运行阶段配置参数信息的读取方法,优选的,步骤(1)中所述解析激活表达式过程为分析出所述表达式中的报文字段,确定报文字段在存储空间的位置信息。一种资源初始化阶段配置参数信息的存储系统,其特征在于,包括用于将所述配置参数信息进行分级的分级装置;用于将所述渠道信息写入共享内存的第一写入装置;用于将隶属于所述渠道的所有交易信息写入共享内存,同时将交易在共享内存中的区间写入所述渠道信息中的第二写入装置;用于将隶属于交易的报文信息和报文转换信息写入共享内存,同时将报文信息和报文转换信息在共享内存中的区间写入交易信息中的第三写入装置;用于将隶属于报文的字段信息写入共享内存,同时将字段信息在共享内存中的区间写入报文信息中的第四写入装置。如上所述的资源初始化阶段配置参数信息的存储系统,优选的,还包括用于在配置参数信息写入共享内存的同时进行配置参数隶属关系确认操作,完成上级参数信息确认下级参数信息在存储空间位置的确认装置。一种运行阶段配置参数信息的读取系统,包括用于循环读取共享内存中渠道信息的第一读取装置;用于循环读取共享内存中交易信息的第二读取装置;用于循环读取共享内存中报文转换信息的第三读取装置;用于循环读取共享内存中报文信息的第四读取装置;用于循环读取共享内存中字段信息的第五读取装置;用于解析激活表达式的解析装置。本发明所述方法及系统与现有技术相比有如下优点①配置参数信息分级通过将配置参数信息分为渠道、交易、报文、字段、报文转换关系等五类数据,全面反映了报文格式转换需要的相关内容,建立了高效的分层索引机制;②配置参数信息分类型存储通过分析各种参数信息的使用特点,采用了不同的存储方式;③配置参数信息在系统资源初始化阶段进行隶属关联,减少了系统运行阶段查询参数的时间消耗;④设置报文和字段的激活表达式,通过激活表达式对配置参数信息进行过滤处理,确保了配置参数信息的准确、有效。


图1是实施方式1中资源初始化阶段配置参数信息的存储系统的结构图;图2是实施方式1中资源初始化阶段配置参数信息的存储方法的流程图;图3是实施方式2中运行阶段配置参数信息的读取系统的结构图;图4是实施方式2中运行阶段配置参数信息的读取方法的流程图。
具体实施例方式下面结合附图对本发明的具体实施方式
进行详细描述。实施方式1本实施方式记载了一种资源初始化阶段配置参数信息的存储系统及方法。如图1所示,该系统包括分级装置11、第一写入装置12、第二写入装置13、第三写入装置14、第四写入装置15和确认装置16。分级装置11用于将所述配置参数信息进行分级。第一写入装置12用于将所述渠道信息写入共享内存。第二写入装置13用于将隶属于所述渠道的所有交易信息写入共享内存,同时将交易在共享内存中的区间写入所述渠道信息中。第三写入装置14用于将隶属于交易的报文信息和报文转换信息写入共享内存,同时将报文信息和报文转换信息在共享内存中的区间写入交易信息中。第四写入装置15用于将隶属于报文的字段信息写入共享内存,同时将字段信息在共享内存中的区间写入报文信息中。确认装置16用于在配置参数信息写入共享内存的同时进行配置参数隶属关系确认操作,完成上级参数信息确认下级参数信息在存储空间的位置。如图2所示,采用图1所示系统在资源初始化阶段存储配置参数信息的方法包括以下步骤(1)分级装置11将配置参数信息进行分级。本实施方式中,配置参数信息共分为五类,分别为渠道信息、交易信息、报文信息、报文转换信息和字段信息,其中字段信息包括报文对照信息(或称字段对照信息)。这五类信息共分为四个等级,按照级别由高到低的顺序分别为渠道信息、交易信息、报文信息(报文转换信息)、字段信息。其中报文信息和报文转换信息同级。(2)第一写入装置12将渠道信息写入共享内存。(3)第二写入装置13将隶属于该渠道的所有交易信息写入共享内存,同时将交易在共享内存中的区间写入所述渠道信息中。(4)第三写入装置14将隶属于交易的报文信息和报文转换信息写入共享内存,同时将报文信息和报文转换信息在共享内存中的区间写入交易信息中。(5)第四写入装置15最后将隶属于报文的字段信息写入共享内存,同时将字段信息在共享内存中的区间写入报文信息中。配置参数信息在存储上按照不同类型的存储方式进行。对于容易在资源初始化阶段完成查询工作或者数据量较小信息的采用顺序存储方式进行存储,如渠道、报文、字段等信息。对于在运行阶段需要不断进行查找的配置参数信息如果采用顺序方式存储,查询时需要对存储的数据进行顺序查询,最坏的情况是需要遍历所有配置参数信息,效率很低。所以对该类型信息采用散列存储和顺序存储两种方式进行存储。在开辟存储空间时为该类型数据开辟两块连续的空间(也可以看作是一块空间分为两部分),配置参数信息按照一定的算法得到关键字,通过关键字计算出配置参数的存储位置,如果计算出的位置和以存储的数据冲突,则在后一块空间上对数据进行顺序存储。交易信息采用散列存储和顺序存储混合方式进行存储。对于数据量极小的参数信息,采用顺序存储方式,相对于其他方式反而更加迅速,如渠道信息;被动使用的参数信息,由于数据量较大并且在系统运行阶段不参与实时运算,采用顺序存储方式,可以简化系统初始化阶段的运算工作量,相对于散列存储方式能节省存储空间,并且在使用工具展示参数信息时符合参数查询习惯,无须再次排序,如报文、字段、报文转换关系等信息;交易信息数据量会随着系统业务的发展而不断增加,并且对交易信息的查询贯穿整个运行阶段,采用散列存储方式和顺序存储方式结合的方法,将有助于对交易信息进行高效的查询,并满足交易信息数量不断扩展的需要。在配置参数信息写入存储空间的同时,确认装置16进行配置参数信息隶属关系确认操作,该操作主要是完成上级配置参数信息确认下级配置参数信息在存储空间的位置,达到各级配置参数信息预知存储位置的目的。配置参数信息的隶属关系有两种一种是字段属于报文、报文属于交易、交易属于渠道;另一种是报文对照属于交易、交易属于渠道。这两种隶属关系决定着报文转换的方式以及结果。渠道、交易、报文、报文转换、字段等五类数据具有自己的数据存储结构,而报文对照信息(也就是字段对照信息)没有自己的存储结构,只是指明某个字段的激活表达式和来源信息中涉及的其他字段在共享内存中的位置,这种其他字段位置信息写在该字段的存储结构中,只能说是对照关系,不能说是隶属关系。第一种隶属关系确定后,从交易信息开始,上级信息中会记录隶属于该级别的下级信息的存储区间,相当于为下级信息建立了索引。在系统运行阶段,只需要知道当前是什么交易,根据交易信息中的下级信息区间就能知道该交易有什么报文,知道了报文也就知道了所属的字段信息。相当于根据交易信息可以向下辐射到信息最底层(字段信息)。在后续操作中,可以按照存储区间读取相关数据。第二种隶属关系确定后,作为上级的交易信息会记录隶属于该交易的报文转换信息的存储区间,报文转换信息中会记录涉及的两个报文信息的存储位置。系统运行阶段,处理流程会根据交易信息得知报文转换信息,按照顺序处理转换关系。隶属关系确认后,主要在以下两个方面进行应用。在系统资源初始化阶段,各级配置信息全部写入存储后,将进行激活表达式和报文对照关系(来源)的解析,解析过程就是确定激活表达式和报文对照关系(来源)涉及的其他字段的存储位置。通常在激活表达式和报文对照关系中引用其他字段会写明该字段隶属的渠道、交易、报文,在实际查找中实行逐级向下查找的方式,缩小查询范围,加快解析过程。在系统运行阶段,得到交易信息后,能根据隶属关系得到该交易相应的报文、报文转换、字段、报文对照(字段对照)等信息,无需再次查找。设置报文信息和字段信息的激活表达式,通过激活表达式确认需要的配置参数信息,过滤不符合处理条件的参数。在所有配置参数信息的隶属关系确认后,进行激活表达式的语法解析,确定激活表达式使用到的配置参数信息,定位参数信息的具体位置。
系统运行阶段,当得到交易信息后,隶属于该交易的报文、字段等信息将全部获得,报文分为请求、应答报文,通过标志位区分,请求时只转换请求报文,应答时只转换应答报文,字段亦是如此。但是当某只交易存在多种请求的情况下,如同时查询余额交易,功能码是1时,查询对公账户,功能码是2时,查询对私账户,这两种功能使用的报文是不同的,在报文转换阶段需要根据激活表达式来确定使用哪种报文。在按照字段对照关系(来源)为字段获取值时,同样会用到激活表达式,还以查询余额交易为例,如当交易成功的时候,可能会返回诸如账户、户名、余额等信息,但是当交易失败时,上述字段将没有任何意义,无需返回。激活表达式作用类似于计算机语言的if语句。以字段激活表达式为例,当结果为真时,执行字段取、赋值操作,为假时,则跳过该字段取、赋值操作。激活表达式分为左、右两个值,关系运算符包括=、>、<、!=、> =、<=等等,如果左右值符合关系运算符的描述,则为真。例如以查询余额交易为例,交易响应码(RespCoddOO为成功,其他为失败,只有成功时,余额字段才需要赋值,那么激活表达式如下CHN. TxCode. Msg. · RespCode = FIX. 00也就是说,TxCode这个交易的Msg报文的RespCode字段取值等于固定值00,余额字段才被激活。实施方式2本实施方式记载了在运行阶段读取采用实施方式1所述方式存储的配置参数信息的系统及方法。如图3所示,该系统包括第一读取装置31、第二读取装置32、第三读取装置33、第四读取装置34、第五读取装置35和解析装置36。第一读取装置31用于循环读取共享内存中的渠道信息。第二读取装置32用于循环读取共享内存中的交易信息。第三读取装置33用于循环读取共享内存中的报文转换信息。第四读取装置34用于循环读取共享内存中的报文信息。第五读取装置35用于循环读取共享内存中的字段信息。解析装置36用于解析激活表达式。如图4所示,采用图3所示系统读取运行阶段配置参数信息的方法包括以下步骤(1)第一读取装置31循环读取共享内存中的渠道信息。判断共享内存中是否有渠道信息,如是,则读取渠道信息后进入下一步;否则,解析装置36解析激活表达式后结束。激活表达式有自己的组成规则,包括关键字、逻辑运算符、关系运算符、数学运算符等,为该规则编写分析算法,对表达式进行解析。优先级从高到低为逻辑运算符、关系运算符、数学运算符,首先拆解逻辑运算符,再拆解关系运算符,最后拆解数学运算符,三步骤拆解完成后,将能分析出运算符两端为常量还是变量,对于变量并且来自于报文字段信息的,需要分析表达式中的字段在存储空间的位置并记录在该表达式所属字段的存储空间里,相当于建立起字段对照关系。解析激活表达式的目的就是分析出表达式中的报文字段,并确定报文字段在存储空间的位置信息,这样在运用激活表达式时,可以快速得到字段的相关信息,无需实时查询。
9
字段对照信息的建立就是对字段取值来源进行解析,解析方式和激活表达式一样,同样是对涉及的字段进行存储位置定位。(2)第二读取装置32循环读取共享内存中的交易信息。判断共享内存中是否有交易信息,如是,则读取交易信息后进入下一步;否则,转至步骤(1)。(3)第三读取装置33循环读取共享内存中的报文转换信息。判断共享内存中是否有报文转换信息,如是,则循环读取报文转换信息;否则,进入下一步;(4)第四读取装置34循环读取共享内存中的报文信息。判断共享内存中是否有报文信息,如是,则读取报文信息后进入下一步;否则,转至步骤O)。(5)第五读取装置35循环读取共享内存中的字段信息。判断共享内存中是否有字段信息,如是,则读取字段信息后进入下一步;否则,转至步骤。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种资源初始化阶段配置参数信息的存储方法,其特征在于,包括以下步骤将所述配置参数信息进行分级;先将第一级信息写入共享内存;然后将隶属于所述第一级信息的所有第二级信息写入共享内存,同时将第二级信息在共享内存中的区间写入所述第一级信息中;再将隶属于所述第二级信息的第三级信息写入共享内存,同时将第三级信息在共享内存中的区间写入交易信息中;依此类推,直到最后一级信息存储完毕。
2.如权利要求1所述的资源初始化阶段配置参数信息的存储方法,其特征在于将所述配置参数信息分为五类,分别为渠道信息、交易信息、报文信息、报文转换信息、字段信息,所述字段信息包括报文对照信息;所述五类信息共分为四个等级,按照级别由高到低的顺序分别为渠道信息、交易信息、报文信息和报文转换信息、字段信息。
3.如权利要求2所述的资源初始化阶段配置参数信息的存储方法,其特征在于所述渠道信息、报文信息、字段信息和报文对照信息采用顺序存储方式;所述交易信息采用散列存储和顺序存储混合方式。
4.如权利要求2所述的资源初始化阶段配置参数信息的存储方法,其特征在于在配置参数信息写入共享内存的同时进行配置参数隶属关系确认操作,完成上级参数信息确认下级参数信息在存储空间的位置。
5.如权利要求4所述的资源初始化阶段配置参数信息的存储方法,其特征在于,所述隶属关系有两种一种是字段属于报文、报文属于交易、交易属于渠道;另一种是报文对照属于交易、交易属于渠道。
6.如权利要求1 5中任一项所述的资源初始化阶段配置参数信息的存储方法,其特征在于所述方法还包括设置报文信息和字段信息的激活表达式,通过所述激活表达式确认需要的配置参数信息,过滤不符合处理条件的配置参数信息,定位参数信息的具体位置的步骤。
7.一种运行阶段配置参数信息的读取方法,其特征在于,包括以下步骤(1)循环读取共享内存中的渠道信息;判断共享内存中是否有渠道信息,如是,则读取渠道信息后进入下一步;否则,解析激活表达式后结束;(2)循环读取共享内存中的交易信息;判断共享内存中是否有交易信息,如是,则读取交易信息后进入下一步;否则,转至步骤⑴;(3)循环读取共享内存中的报文转换信息;判断共享内存中是否有报文转换信息,如是,则循环读取报文转换信息;否则,进入下一步;(4)循环读取共享内存中的报文信息;判断共享内存中是否有报文信息,如是,则读取报文信息后进入下一步;否则,转至步骤⑵;(5)循环读取共享内存中的字段信息;判断共享内存中是否有字段信息,如是,则读取字段信息后进入下一步;否则,转至步骤⑷。
8.如权利要求7所述的运行阶段配置参数信息的读取方法,其特征在于步骤(1)中所述解析激活表达式过程为分析出所述表达式中的报文字段,确定报文字段在存储空间的位置信息。
9.一种资源初始化阶段配置参数信息的存储系统,其特征在于,包括用于将所述配置参数信息进行分级的分级装置(11);用于将所述渠道信息写入共享内存的第一写入装置(12);用于将隶属于所述渠道的所有交易信息写入共享内存,同时将交易在共享内存中的区间写入所述渠道信息中的第二写入装置(13);用于将隶属于交易的报文信息和报文转换信息写入共享内存,同时将报文信息和报文转换信息在共享内存中的区间写入交易信息中的第三写入装置(14);用于将隶属于报文的字段信息写入共享内存,同时将字段信息在共享内存中的区间写入报文信息中的第四写入装置(15)。
10.如权利要求9所述的资源初始化阶段配置参数信息的存储系统,其特征在于所述系统还包括用于在配置参数信息写入共享内存的同时进行配置参数隶属关系确认操作,完成上级参数信息确认下级参数信息在存储空间位置的确认装置(16)。
11.一种运行阶段配置参数信息的读取系统,其特征在于包括用于循环读取共享内存中渠道信息的第一读取装置(31);用于循环读取共享内存中交易信息的第二读取装置(32);用于循环读取共享内存中报文转换信息的第三读取装置(33);用于循环读取共享内存中报文信息的第四读取装置(34);用于循环读取共享内存中字段信息的第五读取装置(35);用于解析激活表达式的解析装置(36)。
全文摘要
本发明涉及一种报文预知方法及系统,包括以下步骤首先将所述配置参数信息进行分级;将第一级信息写入共享内存;然后将隶属于所述第一级信息的所有第二级信息写入共享内存,同时将第二级信息在共享内存中的区间写入所述第一级信息中;再将隶属于所述第二级信息的第三级信息写入共享内存,同时将第三级信息在共享内存中的区间写入交易信息中;依此类推,直到最后一级信息存储完毕。本发明还涉及一种资源初始化阶段配置参数信息的存储系统,以及在运行阶段配置参数信息的读取方法及系统。
文档编号H04L12/56GK102571569SQ20111044579
公开日2012年7月11日 申请日期2011年12月28日 优先权日2011年12月28日
发明者郝骏 申请人:方正国际软件(北京)有限公司, 方正国际软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1