一种消息传输方法及装置的制造方法_2

文档序号:8945672阅读:来源:国知局
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056]参见图1,是本发明提供的消息传输方法的一个实施例的流程示意图,包括:
[0057]S1、接收IaaS平台中第一组件发送的请求消息;所述请求消息包括第一广播规则;
[0058]S2、遍历所述IaaS平台中的所有组件,获得与所述第一广播规则相匹配的第二组件;
[0059]S3、向所述第二组件发送所述请求消息。
[0060]需要说明的是,第一组件在发送请求消息前,对请求消息进行广播规则的预加载。在接收到具有广播规则的请求消息后,遍历IaaS平台中的所有组件,分别将广播规则与每个组件进行匹配,获得匹配成功的第二组件,从而将请求消息发送给相匹配的第二组件,实现消息的快速、准确传输。其中,第一组件可以为IaaS平台中的任一组件,如控制组件、计算组件、存储组件或其他组件,第二组件可以为IaaS平台中的一个或多个组件。
[0061]进一步地,所述遍历所述IaaS平台中所有组件,获得与所述第一广播规则相匹配的第二组件,具体包括:
[0062]将所述请求消息存储在消息队列中;
[0063]在读取所述消息队列中的所述请求消息时,异步遍历所述IaaS平台中所有组件,获取每个组件的参数信息;
[0064]逐一将每个组件的参数信息与所述第一广播规则进行匹配,获得与所述第一广播规则相匹配的第二组件。
[0065]需要说明的是,由于IaaS平台中有大量消息需要传输,则先将所有待传输的消息存储于消息队列中排队进行传输。在将消息存储于消息队列的同时,读取消息队列出口处的待传输消息,异步遍历IaaS平台中所有组件,获取每个组件的参数信息,并将每个组件的参数消息与待传输消息中的广播规则进行匹配,将该待传输消息发送给匹配成功的第二组件。
[0066]优选地,所述第一广播规则包括云平台组件的名称规则、CPU负载规则、内存负载规则或网络流量规则中的至少一个。
[0067]广播规则具有多种类型,例如广播规则为cloud.getComponentName O ==“Compute”,即组件的名称为 Compute ;广播规则为 cloud.getComponentCPULoadO >60 %,即组件的CPU负载大于60%;广播规则为cloud.getComponentMemoryLoadO >70%,即组件的内存负载大于70% ;广播规则为cloud.getComponentNetworkUpLoad O >lM/s,即组件的网络上行流量大于lM/s ;广播规则为cloud.getComponentNetworkDownLoad O >2M/s,即组件的网络下行流量大于2M/s。在指定广播规则时,可以单独使用每种类型的规则,也可对不同类型的规则进行组合。
[0068]进一步地,所述请求消息还包括所述第一组件的识别码;
[0069]在所述向所述第二组件发送所述请求消息之后,还包括:
[0070]接收所述第二组件反馈的确认消息;所述确认消息包括第二广播规则;所述第二广播规则是所述第二组件根据所述第一组件的识别码加载的规则;
[0071]遍历所述IaaS平台中的所有组件,获得与所述第二广播规则相匹配的第一组件;
[0072]向所述第一组件发送所述确认消息。
[0073]需要说明的是,在第二组件接收到第一组件发送的请求消息后,还需向第一组件反馈确认消息。第二组件根据第一组件的识别码加载为第二广播规则,并添加到确认消息中。确认消息发送出去后,确认消息存储到消息队列中进行排队传输。在消息队列的出口读取该确认消息后,根据第二广播规则,获得与其匹配的第一组件,则将确认消息发送给第一组件。
[0074]进一步地,如图2所示,所述IaaS平台采用可视化构建方法进行部署;所述可视化构建方法具体包括:
[0075]S201、所述主控组件接收用户发送的网络环境配置指令;
[0076]S202、所述主控组件根据所述网络环境配置指令配置IaaS网络环境,并对所述IaaS网络环境的网络连通性进行验证;
[0077]S203、若验证成功,则所述主控组件接收用户发送的组件配置指令;
[0078]S204、所述主控组件根据所述组件配置指令,向第一物理机和第二物理机发送安装列表,使所述第一物理机安装配置控制服务所需的第一安装文件,部署为控制组件,并使所述第二物理机安装配置计算服务所需的第二安装文件,部署为计算组件;
[0079]S205、所述主控组件完成IaaS平台的构建。
[0080]需要说明的是,IaaS平台可通过在主控组件的WEB界面上的可视化操作来快速进行部署。先创建IaaS部署平台,包括:选取release版本的CentOS或者Ubuntu,将节点模式配置为多节点部署模式(Mut1-node),将中间软件层(Hypervisor,一种运行在基础物理服务器和操作系统之间的中间软件层)模式配置为虚拟操作系统模拟器(QEMU);其中,CentOS或者Ubuntu为操作系统。
[0081]然后,用户在主控组件的WEB界面中配置IaaS网络环境,包括:在所述WEB界面中将IaaS网络环境配置为Flat DHCP管理、公共IP区间(Public IP range),浮动IP区间(Float IP range),管理无类域间路由(CIDR),储存无类域间路由(CIDR),无类域间路由(CIDR)以及DNS服务器(DNS Servers),并对主控组件的网络连通性进行验证,若验证成功,则可进一步对第一物理机和第二物理机进行配置。
[0082]用户在主控组件的WEB界面中配置第一物理机为控制组件,则主控组件向第一物理机发送安装列表,使第一物理机从安装列表中获取相应的第一安装文件自行进行安装,部署为控制组件。用户在主控组件的WEB界面中配置第二物理机为计算组件,则主控组件向第二物理机发送安装列表,使第二物理机从安装列表中获取第二安装文件进行安装,部署为计算组件。同时,第三物理机、第四物理机等还可被部署为存储组件等其他组件。组件部署完成即完成IaaS平台的构建,用户可以登录IaaS的控制台面板(Dashboard),可以在主控组件中查看部署日志,并且可以进行系统功能健康状况检查(System Health Check)等功能操作。
[0083]本发明实施例提供的消息传输方法,能够在发送的请求消息中添加广播规则,将广播规则与IaaS平台中的每个组件进行匹配,从而将该请求消息发送给匹配成功的组件,实现消息的快速、准确的传输;在传输多个请求消息时,先将请求消息存储在消息队列中,同时,在消息队列的出口读取请求消息,异步遍历所有组件进行广播规则的匹配,提高消息传输效率;广播规则可以为多种类型的规则,请求消息可以通过多种类型规则与待接收组件进行匹配,提高消息传输的准确性。
[0084]相应的,本发明还提供一种消息传输装置,能够实现上述实施例中的消息传输方法的所有流程。
[0085]参见图3,是本发明提供的消息传输装置的一个实施例的结构示意图,包括:
[0086]请求消息接收模块1,用于接收IaaS平台中第一组件发送的请求消息;所述请求消息包括第一广播规则;
[0087]组件获取模块2,用于遍历所述IaaS平台中的所有组件,获得与所述第一广播规则相匹配的第二组件;以及,
[0088]请求消息发送模块3,用于向所述第二组件发送所述请求消息。
[0089]进一步地,所述组件获取模块2具体包括:
[0090]消息存储单元,用于将所述请求消息存储在消息队列中;
[0091]参数信息获取单元,用于在读取所述消息队列中的所述请求消息时,异步遍历所述IaaS平台中所有组件,获取每个组件的参数信息;以及,
[0092]匹配单元,用于逐一将每个组件的参数信息与所述第一广播规则进行匹配,获得与所述第一广播规则相匹配的第二组件。
[0093]优选地,所述第一广播规则包括云平台组件的名称规则、CPU负载规则、内存负载规则或网络流量规则中的至少一个。
[0094]进一步地,所述请求消息还包括所述第一组件的识别码;
[0095]所述消息传输装置还包括:
[0096]确认消息接收模块,用于接收所述第二组件反馈的确认消息;所述确认消息包括第
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1