[发明专利]一种面向大规模请求的ESB任务调度方法及调度系统有效
申请号: | 201110408109.5 | 申请日: | 2011-12-09 |
公开(公告)号: | CN102497419A | 公开(公告)日: | 2012-06-13 |
发明(设计)人: | 唐雪飞;王威 | 申请(专利权)人: | 电子科技大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/56 |
代理公司: | 电子科技大学专利中心 51203 | 代理人: | 周永宏 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 大规模 请求 esb 任务 调度 方法 系统 | ||
技术领域
本发明属于计算机信息分析与数据处理领域,具体涉及一种ESB任务调度方法及调度系统。
背景技术
企业服务总线(Enterprise Service Bus,ESB)是传统中间件技术与XML、Web服务等技术结合的产物,其提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。ESB的出现改变了传统的软件架构,可以提供比传统中间件产品更为廉价的解决方案,同时它还可以消除不同应用之间的技术差异,让不同的应用服务器协调运作,实现了不同服务之间的通信和整合。从功能上看,ESB提供了事件驱动和文档导向的处理模式,以及分布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能力,并可以提供一系列的标准接口。
传统的ESB伸缩性方案是在ESB上重复发布相同的服务,形成服务镜像。当请求到来时,压力稍小的服务会首先处理消息,从而起到平衡系统负载的作用。但是,由于ESB系统本身较之传统技术存在更大的性能开销,所以两者之间在性能上还存在一定差距。传统的负载平衡系统是一个完整应用系统的镜像行为,而ESB则可以针对每个服务环节的具体负载,制定不同的平衡策略,这大大提高了系统实现伸缩的灵活度。ESB技术从EAI衍生而来,并伴随SOA的发展走过了相当长的路程,但它仍然面临一系列挑战,比如性能。SOA由服务集成发展到软件服务化,又进一步发展到基于服务的高级开发,使软件系统增加了很多环节,软件内部形成了很多消耗。而随着SOA应用规模的扩大,这些消耗将带来潜在的市场风险,如何将这些消耗降低到最小,是一个很重要的问题。
发明内容
本发明的目的是为了解决现有的ESB总线在面对大规模请求时负载过重,响应缓慢的问题,提出了一种面向大规模请求的ESB任务调度方法。
本发明的技术方案是:一种面向大规模请求的ESB任务调度方法,包括如下步骤:
S1.初始化一个资源缓冲区用于存储ESB总线中部分服务所提供的资源镜像;
S2.接受web服务器发送过来的HTTP请求,解析HTTP请求中URL信息并为报文分配优先级;
S3.把解析后的HTTP请求存入内存队列;
S4.从内存队列中异步读取HTTP请求并响应;
S5.根据响应分析得到的资源ID,从资源缓冲区中搜寻对应相关的资源组件;
S6.提取当前HTTP请求的语义信息:若资源缓冲区中存有相关的资源组件,则直接调用资源缓冲区的服务组件给web前端;若资源缓冲区中没有相关的资源组件,则直接从ESB总线上获取服务资源,同时把ESB总线上的相关的资源组件复制拷贝一个镜像,然后置换到资源缓冲区,优化资源缓冲区中的资源组合。
本发明还提出了一种面向大规模请求的ESB任务调度系统,具体包括:
报文解析器:用于解析HTTP请求中URL信息并为报文分配优先级,并在内存中创建该报文的镜像,之后让报文镜像入内存队列;
语义标签库:用于存储全部HTTP请求所对应的语义信息;
内存队列:用于缓存报文镜像并按照一定的顺序排列报文镜像并按照队列中的报文的优先级顺序进行动态排序同时调整报文位置;
报文响应器:用于从内存队列中读取高优先级的报文所请求的资源;
资源缓冲区:用于存储ESB总线中部分服务所提供的资源镜像,并向报文响应器提供相应报文请求的资源;
缓存资源置换器:用于实现资源缓冲区和ESB总线之间的交互,并优化资源缓冲区中的资源类别。
进一步的,上述HTTP请求是基于Rest架构的。
本发明的有益效果:本发明的方法和系统通过预评估从当前一端时间到以后一端时间内的HTTP请求所要求的资源,并对资源缓冲区中的资源进行优化配置,避免总是从ESB总线上读取资源,提高了web服务访问效率,缩短系统负载及响应时间。
附图说明
图1为本发明的ESB任务调度系统结构构图。
图2为本发明实施例的SQ排队算法过程示意图。
图3为本发明实施例的总线机制实现综合排队算法的技术框图。
图4为本发明实施例的解析器与报文响应器的异步工作示意图。
具体实施方式
下面结合附图和具体的实施方式对本发明作进一步的阐述。
本发明的面向大规模请求的ESB任务调度方法,具体包括如下步骤:
S1.初始化一个资源缓冲区用于存储ESB总线中部分服务所提供的资源镜像;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110408109.5/2.html,转载请声明来源钻瓜专利网。