基于Artifact的大数据服务的平台及平台处理方法与流程

文档序号:11432144阅读:257来源:国知局
基于Artifact的大数据服务的平台及平台处理方法与流程

本发明涉及数据处理领域,尤其涉及一种基于artifact的大数据服务平台的处理方法,还涉及一种基于artifact的大数据服务平台。



背景技术:

近年来,随着技术和网络的发展,人们对相关的计算能力、资源集中化、资源利用率的要求越来越高,因而,云计算应运而生,使得人们越来越倾向于将应用和服务部署到云环境中。目前,如何有效的对各种各样的服务进行管理和调用,是云计算面临的一个关键问题。传统的web服务调用方式已经有很多学者进行了研究,但是随着各种各样的大数据服务不断涌现并且web服务调用方式不能直接应用于大数据服务中,使得根据大数据服务的特点,提出一种服务描述文档格式,以满足云计算中根据服务描述文档对大数据服务进行调用的要求是十分必要的。

传统环境下的服务选择和组合的研究已经有了一定进展,但是目前的研究还是以传统的web服务作为研究对象。然而随着各种各样的大数据服务的不断涌现,也为服务组合带来了新的挑战,大数据服务由于本身的特性,有着与web服务不同的一面,但是,目前大数据服务与web服务相对稳定的处理时间不同,大数据服务的处理时间受到输入数据量的影响很大而且处理时间都是较长的,同时因为传统的web服务调用方式和组合方式也不能直接应用于大数据服务中,所以对大数据服务的组合也是云环境下服务组合所面临的另一个关键问题。



技术实现要素:

本发明的目的一是,提供一种基于artifact的大数据服务的平台处理方法,可有效进行大数据调用服务,提高处理速率。

本发明的目的二是,提供实现该方法的一种平台。

为实现该目一的,提供了一种基于artifact的大数据服务平台的处理方法,该方法涉及到服务执行引擎和消息队列rabbitmq,其包括以下处理步骤:

步骤101:用户向平台发送http请求,http请求包含要调用服务的地址id和输入参数集;

步骤102:平台接收到http请求后,将请求通过rabbitmq发送到服务执行引擎;

步骤103:服务执行引擎根据服务的地址id查找出该服务描述文档位置;

步骤104:服务执行引擎根据服务描述文档调用服务。

优选地,当在步骤103中,服务执行引擎根据服务的地址id查找出的为复合服务描述文档的位置,在步骤104中进行复合服务处理,所述复合服务处理包括以下处理步骤:

步骤401:解析复合服务描述文档;

步骤402:将复合服务的输入参数名进行分割,分别解析出对应的信息载体artifact的名称和属性attribute的名称,然后将服务输入的参数值赋给artifact中的属性attribute;

步骤403:复合服务处理的组合过程采用事件驱动的模式,先对artifacts属性进行监控,当artifacts里的属性变化后,更新artifacts的状态,查询全部规则rules,检测是否有rules符合,若没有rules符合时,则保持当前状态,继续等待新的复合服务完成后触发新的状态改变后,重新检测rules,若有则触发业务流程服务services中服务的操作,调用外部服务,调用完成后对artifacts里的属性进行修改,当检测到artifacts里的属性状态都进入结束状态后,服务组合流程执行完成,复合服务调用结束。

优选地,在步骤401中,解析复合服务描述文档后生成一个执行实例,所述执行实例对应的数据结构包括仓库repository实例、artifact模型的字典、规则rule的列表、服务类型的字典。

优选地,在步骤403中,对artifacts属性进行监控为对artifact模型的字典进行监控;当检测到artifact模型的字典状态都进入结束状态,服务组合流程执行完成,复合服务调用结束。

优选地,该平台的处理方法对服务的调用采用中介代理的方式,服务执行引擎负责从平台获取服务请求后,根据服务请求信息将请求转化为对服务实例的调用,调用过程为根据请求查找服务信息,根据服务信息下载对应的服务契约,根据服务契约调用服务。

优选地,该平台的处理方法还通过服务执行引擎对设于服务执行引擎外部服务集群进行服务调用。

为实现目的二,还提供了一种基于artifact的大数据服务平台,包括提供网站界面和web接口给用户进行交互的管理中心、用于服务调用的服务执行引擎、用于传递信息的消息队列rabbitmq,所述管理中心通过消息队列rabbitmq与服务执行引擎进行信息传递。

优选地,该平台还包括复合服务执行器,所述复合服务执行器为服务执行引擎的子系统。

优选地,该平台还包括有设于服务执行引擎外部的服务集群,所述服务集群与服务执行引擎连接。

本发明与现有技术相比,其有益效果在于:

本发明中管理中心根据用户的请求通过rabbitmq去调用服务执行引擎的功能,可有效进行大数据调用服务,提高处理速率。本发明中通过http请求就可以让服务执行引擎根据服务描述文档调用大数据服务并返回结果,处理更快速,简洁。

附图说明

图1为本发明的平台结构框图;

图2为本发明的平台处理方法流程图;

图3为本发明中复合服务执行器的处理方法流程图。

具体实施方式

下面结合实施例,对本发明作进一步的描述,但不构成对本发明的任何限制,任何在本发明权利要求范围所做的有限次的修改,仍在本发明的权利要求范围内。

如图1、图2所示,一种基于artifact的大数据服务平台的处理方法,其特征在于,该方法涉及到服务执行引擎3和消息队列rabbitmq2,其包括以下处理步骤:

步骤101:用户向平台发送http请求,http请求包含要调用服务的地址id和输入参数集;

步骤102:平台接收到http请求后,将请求通过rabbitmq2发送到服务执行引擎;

步骤103:服务执行引擎3根据服务的地址id查找出该服务描述文档位置;

步骤104:服务执行引擎3根据服务描述文档调用服务。

如图3所示,当在步骤103中,服务执行引擎根据服务的地址id查找出的为复合服务描述文档的位置,在步骤104中进行复合服务处理,所述复合服务处理包括以下处理步骤:

步骤401:解析复合服务描述文档;

步骤402:将复合服务的输入参数名进行分割,分别解析出对应的信息载体artifact的名称和属性attribute的名称,然后将服务输入的参数值赋给artifact中的属性attribute;

步骤403:复合服务处理的组合过程采用事件驱动的模式,先对artifacts属性进行监控,当artifacts里的属性变化后,更新artifacts的状态,查询全部规则rules,检测是否有rules符合,若没有rules符合时,则保持当前状态,继续等待新的复合服务完成后触发新的状态改变后,重新检测rules,若有则触发业务流程服务services中服务的操作,调用外部服务,调用完成后对artifacts里的属性进行修改,当检测到artifacts里的属性状态都进入结束状态,服务组合流程执行完成,复合服务调用结束。

在本实施例中,复合服务描述文档为基于服务描述文档的格式写,在复合服务描述文档中可以包含若干个服务描述文档,在复合服务描述文档的调用过程中可以将若干个服务组合到一起调用,也可以有先后顺序得调用。

在本实施例中,当触发业务流程服务services中服务的操作,调用外部服务,调用完成后对artifacts里的属性进行修改,又对artifacts状态进行修改,然后继续检测artifacts里的属性状态是否都进入结束状态。

在步骤401中,解析复合服务描述文档后生成一个执行实例,执行实例对应的数据结构包括仓库repository实例、artifact模型的字典、规则rule的列表、服务类型的字典。执行实例为复合服务处理的具体操作处理事件或流程。

在步骤403中,对artifacts属性进行监控为对artifact模型的字典进行监控;当检测到artifact模型的字典状态都进入结束状态后,服务组合流程执行完成,复合服务调用结束。

在本实施例中,所述复合服务处理负责对复合服务描述文档进行解析和执行服务组合的流程。

该平台的处理方法对服务的调用采用中介代理的方式,服务执行引擎3负责从平台获取服务请求后,根据服务请求信息将请求转化为对服务实例的调用,调用过程为根据请求查找服务信息,根据服务信息下载对应的服务契约,根据服务契约调用服务。

该平台的处理方法还通过服务执行引擎3对设于服务执行引擎3外部服务集群4进行服务调用。

如图1所示,本发明还提供了一种基于artifact的大数据服务平台,包括提供网站界面和web接口给用户进行交互的管理中心1、用于服务调用的服务执行引擎3、用于传递信息的消息队列rabbitmq2,所述管理中心1通过消息队列rabbitmq2与服务执行引擎3进行信息传递。

在本实施例中,用户在网页上进行操作,管理中心1便会根据用户的操作通过rabbitmq2去调用服务执行引擎3的功能,并将结果即时返回给用户。管理中心1只需要将请求发送到消息队列rabbitmq2中,服务执行引擎3的节点就会从消息队列拉取请求并进行处理,当有多个节点同时监听同个队列时,消息队列也可以均匀的将数据发配给各个节点,保证了各个节点的负载均衡。该平台对服务的调用采用中介代理的形式,服务执行引擎3负责从管理中心1获取服务请求后,根据服务请求信息将请求转化为对服务实例的调用,调用过程为根据请求查找服务信息,根据服务信息下载对应的服务契约,根据服务契约调用服务。rabbitmq2使得通过增加服务器数量就能扩展服务执行引擎3的计算能力,极大提高了横向扩展能力;使用rabbitmq3来进行异步调用能够保证管理中心1及时反馈用户的请求解决服务执行引擎3调用大数据服务时所需时间长的问题。

该平台还包括复合服务执行器,所述复合服务执行器为服务执行引擎3的子系统。该平台还包括有设于服务执行引擎3外部的服务集群4,所述服务集群4与服务执行引擎3连接。

在本实施例中,所述复合服务执行器负责对复合服务描述文档进行解析和执行服务组合的流程。复合服务执行器采用基于事件驱动设计架构并且使用java实现。

本实施例的工作流程:用户向服务管理中心1发送http请求,http请求包含要调用的服务地址id和输入参数集;管理中心1接收到http请求后,将请求通过rabbitmq2发送到服务执行引擎3;服务执行引擎3根据服务地址查找出该服务描述文档位置并且服务执行引擎3根据请求查找服务信息,然后根据服务信息下载对应的服务契约,再根据服务契约从服务集群4调用服务。在处理对复合服务描述文档时,服务执行引擎3使用复合服务执行器进行处理。复合服务执行器解析复合服务描述文档,解析对应的数据结构包括仓库repository实例,artifact模型的字典,保存规则rule的列表,服务类型的字典;将服务的输入参数名进行分割,解析出对应的信息载体artifact和属性attribute的名称,然后将服务输入参数的值赋给artifact中的属性attribute;服务组合过程通过采用事件驱动的模式,对artifact模型的字典进行监控,当artifacts里的属性变化后,更新artifacts的状态,遍历规则rules,检测是否有规则rules符合,有则触发业务流程服务services中的服务的操作调用外部服务,调用完成后对artifacts里的属性进行修改,当检测到artifact模型的字典状态都进入结束状态后,服务组合流程执行完成,复合服务调用结束。

通过本发明可有效进行大数据调用服务,提高处理速率。

以上仅是本发明的优选实施方式,应当指出对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些都不会影响本发明实施的效果和专利的实用性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1