一种软件系统间的信息交互方法及中间件系统的制作方法_3

文档序号:8319024阅读:来源:国知局
求时),所以只需要逐项填写实际的类属性;如果信息来源来自于外系统,则指定信息来源标识后,先选定来源类别,然后填写对应数据类对外声明的属性名。
[0096]步骤S03:设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
[0097]中间件系统内对于订阅信息(来自订阅系统的系统信息)的所有规则判断逻辑是在用户自定义的规则信息数据库的指引下完成的,为了设置规则信息数据库,用户首先要先指定规则关联的订阅系统,为其创建出用于判断的预设规则。然后进入某条预设规则内判定条件的编辑模式后,就可以为每个条件选定判断的信息来源、字段和判断方法等第二信息标记(可以随时注册和卸载的接口实现类,注册方法与注册本地方法相同,注册后用户可以在选择判断方法下拉列表内勾选)。在编辑完条件后用户可以指定条件间的逻辑关系(典型的为或、与、非、异或、或非等),然后返回规则编辑模式编辑规则间的逻辑关系。当规则集合编辑完毕后,整个判断逻辑就与订阅系统的系统信息产生了依赖关系。系统捕获到订阅信息,然后信息的预处理环节将有效的数据集合发布到规则判断逻辑,则上述建立的规则信息数据库就会被执行,执行结果决定着要调用什么样的系统操作。
[0098]在中间件系统设定好判规则信息数据库之后,再为对应的预设规则关联扇出系统操作的配置。首先指定目标规则(组),然后指定响应的访问方式(如本地接口,远程调用等)并按照对应的访问方式填写参数约束和方法名等(目前支持本地接口、WebserviceClient)。对于需要访问信息本身字段的情况,则可以选定“来自信息”后设定指定字段,并且与具体的方法参数相关联。
[0099]对于来自于已订阅系统的系统信息,如果订阅引擎中已经具备了正确的判定信息配置、信息判断规则和响应操作的映射关系,那么整个中间件系统的工作流程大致描述如下:软件系统进行了相关操作,触发信息发送事件;软件系统打包信息报文发送给中间件系统的订阅引擎;系统信息到达订阅引擎信息队列等待处理;获取队列首部信息,分析信息标记,然后匹配订阅信息数据库判断是否来自订阅系统,不是则丢弃;依据订阅信息,获取系统进行规则判断的字段信息(也许来自于信息本身,也可能来自于订阅系统,第二种情形则可能涉及到对信息来源系统的访问);依据规则信息数据库查找对应的规则信息,然后分解判断依据的字段,先进行设定的条件判断,然后按照规则描述计算条件关系结果,得出的规则结果再与其他规则计算规则关系结果,最终结果由规则判断模块收集后传递给下游;接收来自规则判断逻辑的状态,然后查询操作信息数据库,依据响应方式和参数传递配置执行对应的外系统交互接口 Excuse O,随后执行接口类中的一系列对外系统操作,完成系统响应。这样,中间件系统的订阅引擎对于来自订阅系统的信息响应过程即全部完成。
[0100]作为一种中间件系统,中间件系统的订阅引擎在不同软件系统间反复充当信息订阅者和信息发布者的角色:它一方面扮演订阅者接收和分析判断来自其他软件系统的信息,另一方面又根据判断结果触发并传递参数给其他软件系统来对输入予以响应。这个过程类似于在各个系统间增加了一个具备逻辑判断功能的代理。比如,系统信息来自于软件系统A,但是与系统信息相对应的系统操作不仅可以指向软件系统B和C,理论上还允许反馈信息来源即软件系统A,这意味着中间件系统除了作为第三方信息决策代理外,还可以通过组成类似于“反馈电路”的工作流程来产生周期性效应,从而实现系统状态的自动调节。
[0101]对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。
[0102]图6为本申请实施例提供的一种中间件系统的结构示意图。
[0103]参照图6所示,本申请实施例提供的中间件系统,用于实现软件系统间的信息交互,包括:
[0104]接收模块1,用于接收至少一个软件系统按照预设格式发送的系统信息;
[0105]判断模块2,用于判断所述系统信息是否为来自预先注册的订阅系统的订阅信息;
[0106]执行模块3,用于如果所述系统信息是来自订阅系统的订阅信息,判断所述系统信息是否满足预设规则,若满足,执行与所述预设规则对应的系统操作。
[0107]所述接收模块I,包括:
[0108]检测单元,用于实时检测至少一个软件系统触发的信息发送事件;
[0109]接收单元,用于根据检测得到的信息发送事件,接收所述至少一个软件系统按照预设格式发送的系统信息;
[0110]存储单元,用于将接收的所述系统信息存储进信息队列中。
[0111]所述判断模块2,包括:
[0112]分析单元,用于提取所述信息队列中的系统信息,并分析提取的系统信息中的第一信息标记;
[0113]比对单元,用于将所述第一信息标记与预先注册的订阅系统的订阅信息数据库做比对,判断所述订阅信息数据库中是否包括所述第一信息标记;
[0114]判定单元,用于如果所述订阅信息数据库中包括所述第一信息标记,判定所述提取的系统信息是来自预先注册的订阅系统的订阅信息。
[0115]所述执行模块3,包括:
[0116]抽取单元,用于抽取所述提取的系统信息中的第二信息标记,将所述第二信息标记与预设的规则信息数据库做比对,判断所述规则信息数据库中是否包括所述第二信息标记;
[0117]判定单元,用于如果所述规则信息数据库中包括所述第二信息标记,判定所述提取的系统信息满足所述规则信息数据库中的预设规则;
[0118]执行单元,用于从预设的操作信息数据库中查找与所述预设规则相对应的系统操作,并执行查找到的预设操作。
[0119]图7为本申请实施例提供的另一种中间件系统的结构示意图。
[0120]参照图7所示,本申请实施例提供的中间件系统,用于实现软件系统间的信息交互,在上面实施例的基础上,还包括:
[0121]注册模块4,用于接受软件系统的注册请求,所述注册请求中包括软件系统的系统名称和所发送的信息的第一信息标记和第二信息标记;
[0122]订阅模块5,用于将所述系统名称加入预先注册的订阅系统中,并将所述第一信息标记添加进预设的订阅信息数据库中;
[0123]设置模块6,用于设置与所述第二信息标记相对应的预设规则,并设置与所述预设规则相对应的系统操作,将所述预设规则添加进预设的规则信息数据库中,且将所述系统操作添加进预设的操作信息数据库中。
[0124]本申请实施例提供的中间件系统,可以采用上述方法实施例中的软件系统间的信息交互方法,此处不再赘述。
[0125]应用本申请的技术方案,注册事件触发系统信息发送与接收端信息队列结合、处理模块与信息处理完全解耦、比较规则和逻辑运算操作模块化加载、扇出操作对象和方法信息持久化的设计方案,采用事件触发和信息队列相结合的方式,可以接受任意软件系统的任意类型的系统信息的输入,并且支持用户自定义规则判断条件和指定规则间的逻辑运算关系,并且可以动态加载规则程序模块,中间件系统的输出端操作由持久化信息动态挂接到条件扇出端,整个系统提供了一个可以根据具体应用场景定制的功能框架,从而具备极好的扩展性和适应性;订阅信息数据库、规则信息数据库和操作信息数据库可以保存在数据库或者配置文件内,数据库信息具备维护客户端页面,配置文件具备手工维护和程序维护两种方式,所有信息动态加载,在系统运行过程中支持规则库热切换,当然也支持规则信息的在线构建、移植和导入导出等操作,业务规则维护具备较高的灵活性;可以减弱软件系统之间的强耦合关系,核心逻辑松耦合,在通用、灵活、扩展性高的系统平台基础上,该系统不仅可以轻松胜任信息订阅、系统监控、用户行为管理等场景,而且还可以通过组合以及配置逻辑运算规则构建出简单高效的策略系统内核、业务规则包、流程过滤器、多级串并联甚至附带反馈的信息过滤子系统等;还可以在前端信息队列机制上对接企业数据总线,输出部分的操作触发机制混合SOA调用,则系统还将支持服务器级别的独立部署和跨系统的规则约束操作;
[0126]本申请可以建立起一个能够接受来自
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1