一种基于容器的消息队列总线管理系统及方法_2

文档序号:9865299阅读:来源:国知局
列处理结果的回调处理内容空间。
[0045]优选地,所述类型响应头包括类型标示位以及消息类型优先级。
[0046]优选地,创建若干个相互独立的消息生产者容器和消息消费者容器。
[0047]具体地说,ContaineH容器)的出现,实现了对传统应用,特别是基于网络的B/S(浏览器/客户端)应用更为灵活的部署和管理方式,同时也实现了资源的隔离和限制,满足了快速部署和应用多样化的需求。基于Docker容器技术的应用虚拟化,能够以极快的方式封装和部署应用。Docker主要使用基于Linux操作系统的LXC轻量虚拟化和Cgroup资源隔离技术,并通过镜像封装的方式实现极小的精简环境满足不同容器的系统环境依赖。将消费生产者进行的vhost去除,放到了 Docker的容器中进行运行,利用容器的隔离和动态扩展的技术,可以在一个Broker上运行多个容器,由于Docker的高封装和隔离特性,即保证了消费生产者运行的独立性也保证了压力负载的横向扩容,大大提高了消费生产者的处理能力。新消息载体被拆分成了 2个部分,一部分是ARP响应列表,一部分是队列呼叫报文,以类型响应头作为关系KE Y,使ARP响应列表与对应的队列呼叫报文相匹配。对应的消息内容队列报文解析器完成,消息消费者由队列报文解析器获得对应的消息队列数据。本发明的消息队列数据由2类组成,一类是ARP响应列表,另一类是队列呼叫报文。在队列呼叫报文中真正的消息内容存储在报文正文中,报文的处理结果存放在回调处理内容空间中。本发明利用OVS虚拟交换机可以实现大二层的扁平化网络,可将所有的容器跨物理设备的放在一个二层的虚拟交换机中处理通信,另外利用Docker的容器技术,可以为每一类型的消息消费者产生一个或多个Docker容器单独封装,这样一来可以大大提高消息数据的并发处理能力。
[0048]综上所述,本发明通过容器利用容器的快速部署和扩展能力来提高消息队列的并发处理能力、避免消息队列阻塞,即使一个容器出现问题,不会影响其他容器的正常工作,容器之间相互独立,互不影响。
[0049]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
【主权项】
1.一种基于容器的消息队列总线管理系统,包括Broker消息队列服务实体,其特征在于,所述基于容器的消息队列总线管理系统包括与所述Broker消息队列服务实体相连的接收消息队列并对消息队列进行重新封装和改造处理得到包含消息队列数据的报文的消息生产者容器、包含消息队列数据的报文模块、接收报文信息并根据自身响应类型选择性回应处理的消息消费者容器。2.根据权利要求1所述的基于容器的消息队列总线管理系统,其特征在于,所述消息生产者容器包括仅服务于本消息生产者容器的消息生产者Producer、用于实现所述消息生产者容器跨物理设备处理通信的一类虚拟交换机0VS、对接收到的消息队列进行封装和改造处理的队列报文封装器。3.根据权利要求1所述的基于容器的消息队列总线管理系统,其特征在于,所述消息消费者容器包括仅服务于本消息生产者容器的消息消费者consumer、用于实现所述消息消费者容器跨物理设备处理通信的二类虚拟交换机0VS、解码接收到的报文信息的队列报文解析器。4.根据权利要求1所述的基于容器的消息队列总线管理系统,其特征在于,所述报文模块包括APR响应列表以及队列呼叫报文; 所述ARP响应列表包括类型响应头以及Port MAC表; 所述队列呼叫报文包括与所述ARP响应列表中的类型响应头一致匹配的类型响应头、包含消息队列信息的队列数据、报文正文以及接收消息队列处理结果的回调处理内容空间。5.根据权利要求4所述的基于容器的消息队列总线管理系统,其特征在于,所述类型响应头包括类型标示位以及消息类型优先级。6.根据权利要求1所述的基于容器的消息队列总线管理系统,其特征在于,所述消息队列总线管理系统包括至少一个消息生产者容器。7.根据权利要求1所述的基于容器的消息队列总线管理系统,其特征在于,所述消息队列总线管理系统包括至少一个消息消费者容器。8.—种基于容器的消息队列总线管理方法,其特征在于,所述基于容器的消息队列总线管理方法通过基于容器的消息队列总线管理系统来实现,包括如下步骤: sl、创建包含消息生产者的消息生产者容器和包含消息消费者的消息消费者容器,进入步骤s2; s2、通过所述消息生产者获取消息内容,进入步骤s3; s3、通过所述消息生产者容器解码消息内容,并对报文内容进行封装和改造,生产APR响应列表及队列呼叫报文,进入步骤s4; s4、消息生产者容器发送ARP报文给消息消费者容器,进入步骤s5; s5、所述消息消费者容器解码ARP报文,进入步骤s6; s6、所述消息消费者容器判断自身响应类型是否与ARP报文类型匹配,若匹配,进入步骤s8,若不匹配,进入步骤s7; s7、所述消息消费者容器不回应报文; s8、所述消息消费者容器回应消息生产者,进入步骤s9; s9、消息生产者确定消息消费者的回应,获取消息消费者回应的APR对应端口的MAC地址,发送呼叫队列报文给发出回应的消息消费者,进入步骤slO; slO、消息消费者处理报文中的消息内容,进入步骤sll; sll、返回处理结果。9.根据权利要求8所述的基于容器的消息队列总线管理方法,其特征在于,创建的所述消息生产者容器包括仅服务于本消息生产者容器的消息生产者Producer、用于实现所述消息生产者容器跨物理设备处理通信的一类虚拟交换机0VS、对接收到的消息队列进行封装和改造处理的队列报文封装器。10.根据权利要求8所述的基于容器的消息队列总线管理方法,其特征在于,创建的所述消息消费者容器包括仅服务于本消息生产者容器的消息消费者consumer、用于实现所述消息消费者容器跨物理设备处理通信的二类虚拟交换机0VS、解码接收到的报文信息的队列报文解析器。11.根据权利要求8所述的基于容器的消息队列总线管理方法,其特征在于,所述ARP响应列表包括类型响应头以及Port MAC表;所述队列呼叫报文包括与所述ARP响应列表中的类型响应头一致匹配的类型响应头、包含消息队列信息的队列数据、报文正文以及接收消息队列处理结果的回调处理内容空间。12.根据权利要求11所述的基于容器的消息队列总线管理方法,其特征在于,所述类型响应头包括类型标示位以及消息类型优先级。13.根据权利要求1所述的基于容器的消息队列总线管理方法,其特征在于,创建至少一个消息生产者容器。14.根据权利要求1所述的基于容器的消息队列总线管理方法,其特征在于,所述消息队列总线管理系统包括至少一个消息消费者容器。
【专利摘要】一种基于容器的消息队列总线管理系统,包括Broker消息队列服务实体,所述基于容器的消息队列总线管理系统包括与所述Broker消息队列服务实体相连的接收消息队列并对消息队列进行重新封装和改造处理得到包含消息队列数据的报文的消息生产者容器、包含消息队列数据的报文模块、接收报文信息并根据自身响应类型选择性回应处理的消息消费者容器。本发明还公开了一种基于容器的消息队列总线管理方法。本发明通过容器利用容器的快速部署和扩展能力来提高消息队列的并发处理能力、避免消息队列阻塞,即使一个容器出现问题,不会影响其他容器的正常工作,容器之间相互独立,互不影响。<!-- 2 -->
【IPC分类】G06F9/54, G06F9/455
【公开号】CN105630574
【申请号】CN201510961257
【发明人】王毅竺, 刘晓毅
【申请人】中国电子科技网络信息安全有限公司
【公开日】2016年6月1日
【申请日】2015年12月21日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1