CN104636211B - 一种软件系统间的信息交互方法及中间件系统 - Google Patents

一种软件系统间的信息交互方法及中间件系统 Download PDF

Info

Publication number
CN104636211B
CN104636211B CN201510104408.8A CN201510104408A CN104636211B CN 104636211 B CN104636211 B CN 104636211B CN 201510104408 A CN201510104408 A CN 201510104408A CN 104636211 B CN104636211 B CN 104636211B
Authority
CN
China
Prior art keywords
information
software systems
database
preset
subscription
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.)
Active
Application number
CN201510104408.8A
Other languages
English (en)
Other versions
CN104636211A (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.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
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 Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN201510104408.8A priority Critical patent/CN104636211B/zh
Publication of CN104636211A publication Critical patent/CN104636211A/zh
Application granted granted Critical
Publication of CN104636211B publication Critical patent/CN104636211B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种软件系统间的信息交互方法及中间件系统,接收至少一个软件系统按照预设格式发送的系统信息;判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。这样,可以通过中间件系统接收软件系统之间的系统信息,并根据预设规则对系统信息进行独立的判断,执行与预设规则相对应的系统操作,可以减弱软件系统之间的强耦合关系,并满足用户自定义条件规则的业务需求。

Description

一种软件系统间的信息交互方法及中间件系统
技术领域
本申请涉及软件技术领域,特别是涉及一种软件系统间的信息交互方法及中间件系统。
背景技术
软件系统内部模块之间、系统与系统之间广泛存在着内容分发与过滤、信息处理逻辑定制以及按策略条件触发扇出操作等需求,这需要发布者将信息发出,接收者依据收到的信息做出判断并响应。
目前,在软件系统进行设计时,会制订发布者和接收者的交互方式和逻辑堆栈,在同一软件系统内部的模块之间,通常是通过模块之间的接口或者第三方载体实现信息的发布、接收、判断和响应,在不同的软件系统与软件系统之间,通常是通过应用层协议实现信息的发布、接收、判断和响应。
但是,随着新增业务的出现,系统的业务逻辑会逐步增加,业务经过多次修改会变得越来越复杂,而软件系统之间的交互方式和逻辑堆栈是固化的代码之间的强耦合关系,业务稍有变化就要修改接口或者扩展接口,程序内部的判断与响应逻辑也会变得越来越复杂,使得系统越发脆弱,扩展性变差,甚至无法处理判断条件之间以及业务规则之间存在逻辑运算关系的情形,也不能满足用户自定义条件规则的业务需求。
发明内容
有鉴于此,本申请实施例提供一种软件系统间的信息交互方法及中间件系统,以减弱软件系统之间的强耦合关系,并满足用户自定义条件规则的业务需求。
为了实现上述目的,本申请实施例提供的技术方案如下:
一种软件系统间的信息交互方法,应用于中间件系统中,包括:
接收至少一个软件系统按照预设格式发送的系统信息;
判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。
优选地,所述接收至少一个软件系统按照预设格式发送的系统信息,包括:
实时检测至少一个软件系统触发的信息发送事件;
根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
将接收的所述系统信息存储进信息队列中。
优选地,所述判断所述系统信息是否为来自预先注册的订阅系统的订阅信息,包括:
提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
优选地,所述判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作,包括:
抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
优选地,在所述接收至少一个软件系统按照预设格式发送的系统信息之前,还包括:
接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
一种中间件系统,用于实现软件系统间的信息交互,包括:
接收模块,用于接收至少一个软件系统按照预设格式发送的系统信息;
判断模块,用于判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
执行模块,用于如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。
优选地,所述接收模块,包括:
检测单元,用于实时检测至少一个软件系统触发的信息发送事件;
接收单元,用于根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
存储单元,用于将接收的所述系统信息存储进信息队列中。
优选地,所述判断模块,包括:
分析单元,用于提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
比对单元,用于将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
判定单元,用于如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
优选地,所述执行模块,包括:
抽取单元,用于抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
判定单元,用于如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
执行单元,用于从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
优选地,还包括:
注册模块,用于接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
订阅模块,用于将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
设置模块,用于设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
应用本申请的技术方案,接收至少一个软件系统按照预设格式发送的系统信息;判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。这样,可以通过中间件系统接收软件系统之间的系统信息,并根据预设规则对系统信息进行独立的判断,执行与预设规则相对应的系统操作,可以减弱软件系统之间的强耦合关系,并满足用户自定义条件规则的业务需求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种软件系统间的信息交互方法的流程图;
图2为本申请实施例提供的另一种软件系统间的信息交互方法的流程图;
图3为本申请实施例提供的又一种软件系统间的信息交互方法的流程图;
图4为本申请实施例提供的再一种软件系统间的信息交互方法的流程图;
图5为本申请实施例提供的再一种软件系统间的信息交互方法的流程图;
图6为本申请实施例提供的一种中间件系统的结构示意图;
图7为本申请实施例提供的一种中间件系统的结构示意图。
具体实施方式
相关术语解释:
中间件系统:中间件(Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通。特别是应用软件与系统软件之间的集成逻辑,在现代信息技术应用框架如Web服务、面向服务的体系结构中应用比较广泛。
发布/订阅模型:也称信息范式,在该模型中,信息的发送者(发布者)发送其信息给接收者(订阅者),发布的信息分为不同的类别,且发送对象不指定为确定的接受对象。订阅者与信息来源的相关性仅限于接收到信息,然后具体的订阅者只对一个或多个类别表达兴趣,于是只接收感兴趣的信息,因此也不需要知道什么样的发布者在发布信息。
信息队列:“信息”是不同系统间进行通信的载体。信息在到达接收方后,来源不同的信息依据“先进先出”的顺序进入一个链式中继区域等待直到成功被传递,此时信息的处理模式称之为排队等待,而这个中继信息的设施称之为信息队列。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1为本申请实施例提供的一种软件系统间的信息交互方法的流程图。
参照图1所示,本申请实施例提供的软件系统间的信息交互方法,应用于中间件系统中,这里的中间件系统设置于软件系统之间,作为接收信息和处理信息的中间件,信息交互方法包括:
步骤S11:接收至少一个软件系统按照预设格式发送的系统信息;
本申请提供的软件系统间的信息交互方法,参照图2,所述接收至少一个软件系统按照预设格式发送的系统信息,包括:
S111:实时检测至少一个软件系统触发的信息发送事件;
S112:根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
S113:将接收的所述系统信息存储进信息队列中。
在本申请实施例中,为解耦外部逻辑,实现随时对任意信息发布者(发布信息的软件系统)的任意信息予以接收,引入了触发事件和信息队列机制:当任意信息发布者(发布信息的软件系统)需要发送信息时,则按照统一的信息格式组装信息记录并触发信息发送事件,从而将信息发送的多源性分散到各个发布信息的系统中去;发送信息时,任意信息发布者(发布信息的软件系统)自行定义和发送信息发送事件,中间件系统在接收到信息发送事件后,实时监听信息的发送情况。为了避免信息丢失,中间件系统优选采用“先进先出”的信息队列机制。
步骤S12:判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
本申请实施例提供的一种软件系统间的信息交互方法,如图3所示,所述判断所述系统信息是否为来自预先注册的订阅系统的订阅信息,包括:
S121:提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
S122:将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
在本申请实施例中,中间件系统基于“发布/订阅”逻辑,接收系统信息之后,主要通过系统信息中的标记域等第一信息标记比对订阅信息数据库,从而判断是否该信息为订阅信息。
S123:如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
为了加速判断过程、减少数据库IO,信息订阅数据库将预读到内存中。订阅过程是通过过滤信息的方式完成的,中间件系统支持所有外部软件系统发送的系统信息。
步骤S13:如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。
本申请实施例提供的一种软件系统间的信息交互方法,如图4所示,所述判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作,包括:
S131:抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
S132:如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
S133:从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
信息队列的出口是后续环节的唯一信息发布者,在订阅信息被过滤出来后,整个处理流程便进入规则运算环节。
本申请方案的核心是中间件系统的订阅引擎的规则判断逻辑,它在属于订阅系统的系统信息被捕获之后,首先访问规则信息数据库获取该类信息对应的用户自定义规则信息,之后按照信息来源和信息类别等第二信息标记抽取指定的信息文本做初始条件的判断操作(包括等于、包含等关系的成立与否),然后将判断结果作为输入进行多级逻辑比较(含与、或、非等)和条件运算,最终规则运算环节的输出结果为所述系统信息是否符合规则信息数据库中的某条预设规则。
当规则运算环节的结果(即符合或者不符合某条或某些预设规则)确定后,中间件系统查询操作信息数据库,依据配置中指定的处理方式触发该扇出条件上用户预先定义的操作集合,其中既可以包含对信息本身的操作如分类保存,也可以调用各种系统间的操作的集合,如触发一系列计划任务等。
本申请方案的中间件系统主要划分为:发布/订阅引擎、信息队列机制、规则判断环节的逻辑与系统规则的响应逻辑。在本申请实施例中,发布/订阅引擎、信息队列机制、规则判断环节的逻辑与系统规则的响应逻辑是相互独立的,因为所有的对应关系均持久保存在数据库或配置文件中,所以用户完全可以通过其他外部的配置工具来自行访问和定义预设规则与系统操作的映射关系。
在本申请实施例中,中间件系统在正常执行系统信息的判定和功能分发工作前,需要保证系统已经进行了完整的配置操作,具体可以分为三个方面的配置:
订阅信息数据库:订阅类别的信息到达后,系统需要判断的字段配置;
规则信息数据库:用户自定义的字段比较方法、条件关系和规则关系的配置;
操作信息数据库:指定规则集合运算结果与其他系统操作的映射关系;
三种配置都是基于中间件系统内部已经注册过的外部软件系统、类、链接参数、字段描述等基础数据进行的,在进行识别或匹配时,这些基础数据可以分别作为本申请实施例中的第一信息标记和第二信息标记,这三种配置分别作为信息过滤解析、规则运算和响应操作等系统行为的执行依据,当基础信息得到适当配置后,业务流程就可以顺利得以执行了。
下面将详细描述三种配置的配置过程:
图5为本申请实施例提供的再一种软件系统间的信息交互方法的流程图。
参照图5所示,本申请实施例提供的软件系统间的信息交互方法,应用于中间件系统中,这里的中间件系统设置于软件系统之间,作为接收信息和处理信息的中间件,本申请实施例提供的信息交互方法,在上述所有实施例的步骤之前,还包括:
步骤S01:接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
步骤S02:将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
在软件系统被订阅前首先要注册到中间件系统,分为注册本地静态数据类和注册外系统静态类两种。本地静态数据类的注册在输入系统名称、分配信息类别标号之后,还需要填写对应的类名等第一信息标记,因为信息来源和中间件系统的发布/订阅引擎处于同一个运行环境上下文(即用于模块间的订阅需求时),所以只需要逐项填写实际的类属性;如果信息来源来自于外系统,则指定信息来源标识后,先选定来源类别,然后填写对应数据类对外声明的属性名。
步骤S03:设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
中间件系统内对于订阅信息(来自订阅系统的系统信息)的所有规则判断逻辑是在用户自定义的规则信息数据库的指引下完成的,为了设置规则信息数据库,用户首先要先指定规则关联的订阅系统,为其创建出用于判断的预设规则。然后进入某条预设规则内判定条件的编辑模式后,就可以为每个条件选定判断的信息来源、字段和判断方法等第二信息标记(可以随时注册和卸载的接口实现类,注册方法与注册本地方法相同,注册后用户可以在选择判断方法下拉列表内勾选)。在编辑完条件后用户可以指定条件间的逻辑关系(典型的为或、与、非、异或、或非等),然后返回规则编辑模式编辑规则间的逻辑关系。当规则集合编辑完毕后,整个判断逻辑就与订阅系统的系统信息产生了依赖关系。系统捕获到订阅信息,然后信息的预处理环节将有效的数据集合发布到规则判断逻辑,则上述建立的规则信息数据库就会被执行,执行结果决定着要调用什么样的系统操作。
在中间件系统设定好判规则信息数据库之后,再为对应的预设规则关联扇出系统操作的配置。首先指定目标规则(组),然后指定响应的访问方式(如本地接口,远程调用等)并按照对应的访问方式填写参数约束和方法名等(目前支持本地接口、WebserviceClient)。对于需要访问信息本身字段的情况,则可以选定“来自信息”后设定指定字段,并且与具体的方法参数相关联。
对于来自于已订阅系统的系统信息,如果订阅引擎中已经具备了正确的判定信息配置、信息判断规则和响应操作的映射关系,那么整个中间件系统的工作流程大致描述如下:软件系统进行了相关操作,触发信息发送事件;软件系统打包信息报文发送给中间件系统的订阅引擎;系统信息到达订阅引擎信息队列等待处理;获取队列首部信息,分析信息标记,然后匹配订阅信息数据库判断是否来自订阅系统,不是则丢弃;依据订阅信息,获取系统进行规则判断的字段信息(也许来自于信息本身,也可能来自于订阅系统,第二种情形则可能涉及到对信息来源系统的访问);依据规则信息数据库查找对应的规则信息,然后分解判断依据的字段,先进行设定的条件判断,然后按照规则描述计算条件关系结果,得出的规则结果再与其他规则计算规则关系结果,最终结果由规则判断模块收集后传递给下游;接收来自规则判断逻辑的状态,然后查询操作信息数据库,依据响应方式和参数传递配置执行对应的外系统交互接口Excuse(),随后执行接口类中的一系列对外系统操作,完成系统响应。这样,中间件系统的订阅引擎对于来自订阅系统的信息响应过程即全部完成。
作为一种中间件系统,中间件系统的订阅引擎在不同软件系统间反复充当信息订阅者和信息发布者的角色:它一方面扮演订阅者接收和分析判断来自其他软件系统的信息,另一方面又根据判断结果触发并传递参数给其他软件系统来对输入予以响应。这个过程类似于在各个系统间增加了一个具备逻辑判断功能的代理。比如,系统信息来自于软件系统A,但是与系统信息相对应的系统操作不仅可以指向软件系统B和C,理论上还允许反馈信息来源即软件系统A,这意味着中间件系统除了作为第三方信息决策代理外,还可以通过组成类似于“反馈电路”的工作流程来产生周期性效应,从而实现系统状态的自动调节。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。
图6为本申请实施例提供的一种中间件系统的结构示意图。
参照图6所示,本申请实施例提供的中间件系统,用于实现软件系统间的信息交互,包括:
接收模块1,用于接收至少一个软件系统按照预设格式发送的系统信息;
判断模块2,用于判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
执行模块3,用于如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。
所述接收模块1,包括:
检测单元,用于实时检测至少一个软件系统触发的信息发送事件;
接收单元,用于根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
存储单元,用于将接收的所述系统信息存储进信息队列中。
所述判断模块2,包括:
分析单元,用于提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
比对单元,用于将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
判定单元,用于如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
所述执行模块3,包括:
抽取单元,用于抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
判定单元,用于如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
执行单元,用于从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
图7为本申请实施例提供的另一种中间件系统的结构示意图。
参照图7所示,本申请实施例提供的中间件系统,用于实现软件系统间的信息交互,在上面实施例的基础上,还包括:
注册模块4,用于接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
订阅模块5,用于将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
设置模块6,用于设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
本申请实施例提供的中间件系统,可以采用上述方法实施例中的软件系统间的信息交互方法,此处不再赘述。
应用本申请的技术方案,注册事件触发系统信息发送与接收端信息队列结合、处理模块与信息处理完全解耦、比较规则和逻辑运算操作模块化加载、扇出操作对象和方法信息持久化的设计方案,采用事件触发和信息队列相结合的方式,可以接受任意软件系统的任意类型的系统信息的输入,并且支持用户自定义规则判断条件和指定规则间的逻辑运算关系,并且可以动态加载规则程序模块,中间件系统的输出端操作由持久化信息动态挂接到条件扇出端,整个系统提供了一个可以根据具体应用场景定制的功能框架,从而具备极好的扩展性和适应性;订阅信息数据库、规则信息数据库和操作信息数据库可以保存在数据库或者配置文件内,数据库信息具备维护客户端页面,配置文件具备手工维护和程序维护两种方式,所有信息动态加载,在系统运行过程中支持规则库热切换,当然也支持规则信息的在线构建、移植和导入导出等操作,业务规则维护具备较高的灵活性;可以减弱软件系统之间的强耦合关系,核心逻辑松耦合,在通用、灵活、扩展性高的系统平台基础上,该系统不仅可以轻松胜任信息订阅、系统监控、用户行为管理等场景,而且还可以通过组合以及配置逻辑运算规则构建出简单高效的策略系统内核、业务规则包、流程过滤器、多级串并联甚至附带反馈的信息过滤子系统等;还可以在前端信息队列机制上对接企业数据总线,输出部分的操作触发机制混合SOA调用,则系统还将支持服务器级别的独立部署和跨系统的规则约束操作;
本申请可以建立起一个能够接受来自于任意系统的任意文本类输入、依据用户自定义的规则判别条件及其基础上的逻辑运算关系、计算并触发一个或者一组用户自定义的扇出操作的系统解决方案,从而将软件模块间或软件系统间的耦合关系从“硬代码”中抽离出来。中间件系统具备发布/订阅关系的系统间解耦需求,但是该解决方案实际上可以广泛适用于各类软件系统,并满足用户自定义条件规则的业务需求。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种软件系统间的信息交互方法,应用于中间件系统中,其特征在于,包括:
接收至少一个软件系统按照预设格式发送的系统信息;
判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作;
在所述接收至少一个软件系统按照预设格式发送的系统信息之前,还包括:
接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
2.根据权利要求1所述的方法,其特征在于,所述接收至少一个软件系统按照预设格式发送的系统信息,包括:
实时检测至少一个软件系统触发的信息发送事件;
根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
将接收的所述系统信息存储进信息队列中。
3.根据权利要求2所述的方法,其特征在于,所述判断所述系统信息是否为来自预先注册的订阅系统的订阅信息,包括:
提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
4.根据权利要求3所述的方法,其特征在于,所述判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作,包括:
抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
5.一种中间件系统,用于实现软件系统间的信息交互,其特征在于,包括:
接收模块,用于接收至少一个软件系统按照预设格式发送的系统信息;
判断模块,用于判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
执行模块,用于如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作;
还包括:
注册模块,用于接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
订阅模块,用于将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
设置模块,用于设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
6.根据权利要求5所述的中间件系统,其特征在于,所述接收模块,包括:
检测单元,用于实时检测至少一个软件系统触发的信息发送事件;
接收单元,用于根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
存储单元,用于将接收的所述系统信息存储进信息队列中。
7.根据权利要求6所述的中间件系统,其特征在于,所述判断模块,包括:
分析单元,用于提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
比对单元,用于将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
判定单元,用于如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
8.根据权利要求7所述的中间件系统,其特征在于,所述执行模块,包括:
抽取单元,用于抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
判定单元,用于如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
执行单元,用于从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
CN201510104408.8A 2015-03-10 2015-03-10 一种软件系统间的信息交互方法及中间件系统 Active CN104636211B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510104408.8A CN104636211B (zh) 2015-03-10 2015-03-10 一种软件系统间的信息交互方法及中间件系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510104408.8A CN104636211B (zh) 2015-03-10 2015-03-10 一种软件系统间的信息交互方法及中间件系统

Publications (2)

Publication Number Publication Date
CN104636211A CN104636211A (zh) 2015-05-20
CN104636211B true CN104636211B (zh) 2018-10-16

Family

ID=53214999

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510104408.8A Active CN104636211B (zh) 2015-03-10 2015-03-10 一种软件系统间的信息交互方法及中间件系统

Country Status (1)

Country Link
CN (1) CN104636211B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106685811B (zh) * 2015-11-09 2019-07-02 北京仿真中心 基于协议的通用网关及其实现方法
CN106126233A (zh) * 2016-06-24 2016-11-16 武汉斗鱼网络科技有限公司 一种基于弹射器的事件调度方法及装置
CN108491281A (zh) * 2018-03-22 2018-09-04 武汉斗鱼网络科技有限公司 在软件系统之间进行交互的方法、可读介质及电子设备
CN110737524B (zh) * 2019-10-18 2022-07-22 北京思维造物信息科技股份有限公司 一种任务规则管理方法、装置、设备及介质
CN111555925B (zh) * 2020-06-09 2022-09-02 云南电网有限责任公司电力科学研究院 一种电力自动化终端自动辨识和配置方法及系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471846A (zh) * 2007-12-29 2009-07-01 北京天融信网络安全技术有限公司 一种网络事件分析管理系统
CN101945056A (zh) * 2009-06-29 2011-01-12 软件Ag公司 基于策略的jms中间件群的系统和/或方法
CN102340495A (zh) * 2010-07-26 2012-02-01 中国移动通信集团广东有限公司 一种支撑跨系统业务联动的事件中心及其事件处理方法
CN102761581A (zh) * 2011-04-28 2012-10-31 国际商业机器公司 管理信息的动态订阅方法和设备及其分发方法和系统
CN103458033A (zh) * 2013-09-04 2013-12-18 北京邮电大学 事件驱动、面向服务的物联网服务提供系统及其工作方法
CN103856393A (zh) * 2013-07-09 2014-06-11 携程计算机技术(上海)有限公司 基于数据库的分布式消息中间件系统及其运行方法
CN103997532A (zh) * 2014-05-30 2014-08-20 长沙瑞和数码科技有限公司 一种农业物联网边缘中间件系统
CN104092767A (zh) * 2014-07-21 2014-10-08 北京邮电大学 一种增加消息队列模型的发布/订阅系统及其工作方法
CN104243611A (zh) * 2014-09-30 2014-12-24 浪潮软件股份有限公司 一种基于分发思想的消息服务中间件系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471846A (zh) * 2007-12-29 2009-07-01 北京天融信网络安全技术有限公司 一种网络事件分析管理系统
CN101945056A (zh) * 2009-06-29 2011-01-12 软件Ag公司 基于策略的jms中间件群的系统和/或方法
CN102340495A (zh) * 2010-07-26 2012-02-01 中国移动通信集团广东有限公司 一种支撑跨系统业务联动的事件中心及其事件处理方法
CN102761581A (zh) * 2011-04-28 2012-10-31 国际商业机器公司 管理信息的动态订阅方法和设备及其分发方法和系统
CN103856393A (zh) * 2013-07-09 2014-06-11 携程计算机技术(上海)有限公司 基于数据库的分布式消息中间件系统及其运行方法
CN103458033A (zh) * 2013-09-04 2013-12-18 北京邮电大学 事件驱动、面向服务的物联网服务提供系统及其工作方法
CN103997532A (zh) * 2014-05-30 2014-08-20 长沙瑞和数码科技有限公司 一种农业物联网边缘中间件系统
CN104092767A (zh) * 2014-07-21 2014-10-08 北京邮电大学 一种增加消息队列模型的发布/订阅系统及其工作方法
CN104243611A (zh) * 2014-09-30 2014-12-24 浪潮软件股份有限公司 一种基于分发思想的消息服务中间件系统

Also Published As

Publication number Publication date
CN104636211A (zh) 2015-05-20

Similar Documents

Publication Publication Date Title
CN104636211B (zh) 一种软件系统间的信息交互方法及中间件系统
US5878398A (en) Method and system for managing workflow of electronic documents
US8484662B2 (en) Systems and/or methods for end-to-end business process management, business event management, and/or business activity monitoring
CN112468472B (zh) 一种基于安全日志关联分析的安全策略自反馈方法
CN110083623B (zh) 一种业务规则生成方法及装置
CN105488223B (zh) 业务数据事件的分析订阅方法及系统
CN110569298B (zh) 一种数据对接、可视化方法和系统
CN108809808A (zh) 信息处理方法、装置、设备及存储介质
CN102681888B (zh) 应用服务器管理系统、应用服务器管理方法、管理装置、应用服务器
US20110197207A1 (en) System and method for producing audit trails
CN109086195A (zh) 基于日志通用性规则引擎的日志统计与分析系统及方法
Ferrucci Pro-active dynamic vehicle routing: real-time control and request-forecasting approaches to improve customer service
CN112732949A (zh) 一种业务数据的标注方法、装置、计算机设备和存储介质
US20170109640A1 (en) Generation of Candidate Sequences Using Crowd-Based Seeds of Commonly-Performed Steps of a Business Process
CN108694227A (zh) 用于自动云资源供应的标签
CN110009273A (zh) 信息处理方法及装置、存储介质、电子装置
CN115033590A (zh) 一种多域数据融合的方法、装置和存储介质
CN112711623A (zh) 数据拉通方法及装置、存储介质、电子装置
CN113285855B (zh) 服务器监控方法及系统
CN109255686A (zh) 任务提示方法、装置、电子设备及计算机可读存储介质
CN110781661B (zh) 一种基于聊天记录的统计数据生成方法
JP2002351702A (ja) オンライン利用の端末稼働統計データ作成方法及び装置
US20130144886A1 (en) Method for managing email
CN110147980A (zh) 工单处理方法及装置
CN112035613B (zh) 基于多轮对话的信息推送方法及装置、存储介质、电子装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant