用于管理报文排序的方法和系统技术方案

技术编号:7259999 阅读:264 留言:0更新日期:2012-04-13 10:25
一种方法,基于一个报文对一个或者多个其他报文的依赖性,对一序列中的接收自发送端并且发送至接收端的多个报文进行排序,该方法包括以下步骤:从报文流中接收一个或者多个报文,并且将该一个或者多个报文存储在数据库中;识别每个报文的特征(P-Key-Order),其中,该特征对于报文组是共有的;根据该报文的参数,识别对于该报文组中的报文的报文依赖性;检查该数据库中特定的存储的报文,从而通过以下步骤确定该存储的报文是否能够进行发送:确定该存储的报文是否依赖于之前的报文,并且确定该之前的报文的状态;基于该之前的报文的状态,更新该存储的报文的状态;在确认该之前的报文被发送之后,发送该存储的报文。

【技术实现步骤摘要】
【国外来华专利技术】用于管理报文排序的方法和系统
本专利技术涉及一种用于管理报文排序的方法和系统,具体地但不限于,涉及到达多处理器环境中的外部系统的报文的排序。
技术介绍
报文通信系统存在于多个不同领域,并且以多种不同的方式应用。报文通常与已经发出的或者还未到达的其他报文相关,换言之,通常具有报文排序。鉴于如今众多报文通信系统的工作方式,在中央处理环境下无序地接收到报文的情况并不少见。特别地,存在多处理器环境的情况,该多个处理器以不同的速度运行,从而导致了失序。然后,这些报文通常需要向前传输到目的站。而一些目的站无法处理无序接收到的报文,从而,这些目的站也就无法顺序处理这些报文。有许多现有的通信系统都试图克服上述问题。例如,WO2007/062510描述了一种使用序列发生器(sequencer)来同时处理报文的系统。报文具有唯一标识符和序列指示符。在该系统中,上述条件使得确定该报文或每个报文的先验序列标识符成为可能。这样有助于利用依附性:共用相同序列标识符的报文通过相同的处理来分配。在WO2007/062510中,通过将报文锁定在出站队列的方式来处理排序。US2007/0124398公开了一种多处理器环境,其中,系统使用序列标识符和序列号的组合来确保报文通过相同的资源来处理。这种方法需要待发报文的线程,待发报文的线程需要在处理待发报文之前进行确认。还可以选择根据序列号形成的队列,并可以对该队列进行排序。US2003/110230公开了一种并行处理环境,其中,采用通过共用资源(resource)或者共用线程处理来自相同数据源(source)的报文来保存报文的排序。同样,这需要使用待发线程和处理或者经过排序的报文队列来向前发送。上述现有技术的方法在一定程度上起作用,但是这些方法都完全依赖于导致复杂性的将报文排队的步骤,并且还需要使用大量存储器和处理能力。这种系统的主要问题在于维护和并不总是能够使排序基于唯一的序列相关性的事实。这种依赖性可能会比只在同一序列标识符内的序列号的排序要复杂得多。上述方法起到一定作用,但是遇到了维护和可靠性的问题。在存储器中具有等待线程并不稳定:因此,如果机器发生问题,则排序会丢失。在经过排序的队列中处理排序产生了可扩展性(scalability)的问题。难以加入更多队列,或者处理和队列之间不得不具有依附性。管理依附性也更复杂。因为在服务方面不存在冗余,所以加入了一个失败的因素。另外,现有技术无法从集中的历史记录中产生教导,从而不可能处理复杂的排序。换言之,当没有唯一的序列标识符时,不可能处理复杂的排序。
技术实现思路
专利技术目的:本专利技术的一个方面是为了至少克服一些与现有技术相关的问题。本专利技术提供了根据所附的权利要求所述的方法和系统。根据本专利技术的一个方面,提供了一种方法,将在等效于多个报文的报文排序的序列中的接收自发送端并且发送至接收端的多个报文进行排序,其中,实时确定报文排序,该方法包括以下步骤:从报文流中接收一个或者多个报文,并且将该一个或者多个报文存储在数据库中;识别每个报文的特征(P-Key-Order),其中,该特征对于报文组是共同的;根据该报文的参数,识别对应于该报文组的该报文排序(1、2、3、4等等)的序列;检查该数据库中特定的存储的报文,从而通过以下步骤确定该存储的报文是否可以进行发送:确定在该序列中是否有之前的报文存在于所存储的报文之前,并确定该之前的报文的状态;基于该之前的报文的状态,更新该存储的报文的状态;以及在确认该之前的报文被发送之后,即根据序列发送该存储的报文。本专利技术提供了一种可高度扩展系统,该系统可以轻松地进行扩展,以处理与日俱增的通信量。本专利技术还保证了报文能够在多处理器环境中以正确的排序进行发送。这些都需要严格的报文的依赖性。系统中并未引入依赖性。并非要将全部报文进行排序:无依赖性的报文可以并行发送。因此,如果一个接收端连接发生故障,则这将不会影响到任何其他接收端,除非将报文被功能性连接。另外,由于不同的处理器之间的非同步性会造成许多问题,因此,使用正确的排序非常重要。例如,在航空公司环境下,如果存在着涉及报文同步性的问题,则当实际上班机上仍有可载舱容的情况下,乘客可能会被误拒载。这会造成航空公司的资金损失和其他损失。由于线程和依附性(affinity)没有形成流程的一部分,所以通过简单的实施例提供根据本专利技术所提供的方法。特别地,由于不存在系统的排队和处理元素,因此,在系统中的排队和处理元素之间不存在依附性。另外,本专利技术还具有处理错误的灵活方式。当处理序列中的丢失报文时,这一点尤其重要。通过使用数据库,将报文和传送的整个历史记录保留在特定时间窗口中。该时间窗口还提供了阈值。在该阈值之前,报文可以处于一种状态,而在该阈值之后,该报文的状态可能发生改变。该阈值尤其用于保留问题并且用于减小需要用于存储报文及与其相关的信息的空间大小。另外,本专利技术将排队最小化,并且使得可扩展性更加容易。根据本专利技术的第二方面,提供了一种报文系统,该报文系统用于对等效于多个报文的报文排序的序列中的接收自发送端并且发送至接收端的所接收到的多个报文进行排序,该方法包括以下步骤:接收器模块,用于从报文流中接收一个或者多个报文,并且将该一个或者多个报文存储在数据库中;报文管理模块,用于识别每个报文的特征(P-Key-Order),其中,该特征对于报文组是共同的;用于根据该报文的参数,识别对应于该报文组的该报文排序(1、2、3、4等等)的序列;并且用于检查数据库中特定的存储的报文,从而通过以下步骤确定该存储的报文是否可以发送:确定在该序列中是否有之前的报文存在于所存储的报文之前,并且确定该之前的报文的状态;以及基于该之前的报文的状态,更新该存储的报文的状态;传送模块,用于在已发送该之前的报文之后,即根据该序列发送该存储的报文。附图说明现在将以实例的方式来参考附图,其中:图1是以实例方式给出的根据本专利技术的实施例的系统的简单示意图,图2是以实例方式给出的根据本专利技术的实施例的报文(message)的正常情况排序的示意图,图3是以实例方式给出的根据本专利技术的实施例的图1中的系统的详细示意图,图4是以实例方式给出的根据本专利技术的实施例所使用的标识命名法的图表的一部分,图5是以实例方式给出的根据本专利技术的实施例的示出报文生成的流程图,图6是以实例方式给出的根据本专利技术的实施例的示出计算报文排序的流程图,图7是以实例方式给出的根据本专利技术的实施例的示出报文的“V状态”的流程图,图8是以实例方式给出的根据本专利技术的实施例的示出回调的级联和排序的流程图,图9是以实例方式给出的根据本专利技术的实施例的报文依赖性表,图10是以实例方式给出的根据本专利技术的实施例的乘客姓名记录信封的实例,图11是以实例方式给出的根据本专利技术的实施例的示出需要首先将情况环境分开的排序的流程图,以及图12是以实例方式给出的根据本专利技术的实施例的单个目标的依赖性树。具体实施方式从最高层面上讲,本专利技术涉及从一个系统到另一个系统的报文的排序,以便保证同步。该内容在图1中以实例的方式示出。图1示出了与报文管理模块102相连接的预约系统(系统A)100。在将经过同步的报文发送到航线系统(系统B)之前,如在下文中进行更详细描述的,报文管理模块管理收到的报文(incomingmess本文档来自技高网
...
用于管理报文排序的方法和系统

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2009.05.18 EP 09305450.01.一种报文排序的方法,基于一个报文对一个或者多个其他报文的依赖性,对多个报文进行排序而没有引用将要到来的排序,以将所述多个报文以正确的排序发送至接收端,其中,报文包括P-密钥-排序和参数,所述方法包括以下步骤:从报文流中以未确定的顺序接收多个报文,并且将所述多个报文存储在数据库中,所述报文流包括与至少两个不同的报文组相关的报文;通过以下步骤对接收和存储的报文进行排序:识别每个报文的P-密钥-排序特征,其中,所述P-密钥-排序特征对于报文组是共有的,并根据所述报文的参数,识别对于所述报文组中报文的报文依赖性;检查所述数据库中特定的所存储的报文,从而通过以下步骤确定所存储的报文是否准备好进行发送:响应于检查的特定的所存储的报文准备好进行发送,将所述报文的状态设置为“没有依赖性”,并且为了传送到外部系统将所述报文立刻进行排队;响应于检查的特定的所存储的报文没有准备好进行发送,确定所存储的报文是否依赖于一个之前的报文;响应于检查的特定的所存储的报文依赖于之前的报文,将所述报文的状态设置为具有依赖性,否则将所述报文的状态设置为“未知”并且将所述报文插入定时器以用于将所述报文延迟,从而为将要接收到的其他报文留出了时间,这样使得所述报文的依赖性在特定的所存储的报文的后续检查中得到确定;响应于所述报文具有“没有依赖性”的状态,并且为了发送至目标而进行排队,发送所存储的报文并且将所述报文的状态设置为“发送”,并且将后续报文的状态从“具有依赖性”改变为“没有依赖性”;在确认所述之前的报文被发送之后,发送所存储的报文。2.根据权利要求1所述的方法,进一步包括:延迟所存储的报文,直到满足预定条件。3.根据权利要求1所述的方法,进一步包括:延迟所存储的报文,直到到达延迟时间。4.根据权利要求1所述的方法,进一步包括:将所存储的报文发送到输出队列。5.根据权利要求4所述的方法,进一步包括:更新所存储的报文的状态,从而更新与所存储的报文相关的所有之后报文的状态。6....

【专利技术属性】
技术研发人员:马里恩·卡多瑞特艾格尼丝·珀尔瑞德大卫·保罗茵
申请(专利权)人:阿玛得斯两合公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术