[发明专利]一种基于SEDA的ESB组件实现方法在审
申请号: | 201410070382.5 | 申请日: | 2014-02-28 |
公开(公告)号: | CN103870337A | 公开(公告)日: | 2014-06-18 |
发明(设计)人: | 闫鹏 | 申请(专利权)人: | 浪潮集团山东通用软件有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 seda esb 组件 实现 方法 | ||
1.一种基于SEDA的ESB组件实现方法,其特征在于,包括如下步骤:
S10:提供一个线程池,以负责服务组件内部并发处理服务组件接收到消息;
S11:提供一个业务相关的事件处理器,以负责封装服务组件具体业务逻辑、以及对消息的处理;
S12:提供一个输入事件队列,以负责作为服务组件请求消息入口,并对大量消息请求缓存;
S13:提供一个或多个资源控制器,以负责控制服务组件的消息多列深度和并发线程数的关系,保证处理消息的通道稳定运行。
2.根据权利要求1所述基于SEDA的ESB组件实现方法,其特征在于,步骤S10中:
线程池在每个服务组件内部,批量处理获取处理消息,通过有限的线程池中获取的线程维持并发;
使用线程池驱动服务组件的运行,将事件处理同线程的创建和调度分离,服务组件为顺序或者并行执行。
3.根据权利要求2所述基于SEDA的ESB组件实现方法,其特征在于,步骤S11中,业务事件处理是每个ESB服务组件的逻辑实现,采用从消息队列中读取消息,处理这些消息,然后执行并向下一个服务端点的输入队列。
4.根据权利要求3所述基于SEDA的ESB组件实现方法,其特征在于:业务事件处理器封装为统一接口,入参为输入的消息内容对象,具体处理逻辑封装在接口之内。
5.根据权利要求4所述基于SEDA的ESB组件实现方法,其特征在于,步骤S12中,输入事件队列对应ESB内部虚拟总线的实现,采用内存队列或持久化消息队列来实现。
6.根据权利要求5所述基于SEDA的ESB组件实现方法,其特征在于:步骤S12中,服务通过队列分解成服务组件,每个服务组件代表FSM的一个状态集合。
7.根据权利要求6所述基于SEDA的ESB组件实现方法,其特征在于,步骤S13中,控制器控制队列消息和后面并发线程数保持在稳定数值的控制环节,其中,服务组件控制器负责资源的分配和调度,控制派发给事件处理器的事件的数量和顺序,事件处理器可能在内部丢弃、过滤、重排序事件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团山东通用软件有限公司,未经浪潮集团山东通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410070382.5/1.html,转载请声明来源钻瓜专利网。