美文网首页
rocketMQ基本入门介绍

rocketMQ基本入门介绍

作者: MR_梁林 | 来源:发表于2018-06-14 11:49 被阅读0次

1、RocketMQ 简介:

 RocketMQ前身是阿里研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具有高性能、高可靠、高实时、分布式特点。

2、RocketMQ基本架构:

RocketMQ基本架构.png


如图所示RocketMQ架构上主要分为四部分:

Producer:

       充当消息发布的角色,支持分布式集群方式部署。producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递。投递的过程支持快速失败并且低延迟。

Consumer:

      充当消息消费者的角色,支持分布式集群方式部署。支持以push推,pull拉两种模式对消息进行消费。同时也支持集群方式和广播形式的消费,它提供实时消息订阅机制,可以满足大多数用户的需求。

NameServer:

      NameServer是一个功能齐全的服务器,其角色类似dubbo中的zookeeper,支持Broker的动态注册与发现。主要包括两个功能:

     1、Broker管理。NameServer接受Broker集群的注册信息并且保存下来作为路由信息的基本数据。然后提供心跳检测机制,检查Broker是否还存活。 

    2 、路由信息管理。每个NameServer将保存关于Broker集群的整个路由信息和用于客户端查询的队列信息。然后Producer和Conumser通过NameServer就可以知道整个Broker集群的路由信息,从而进行消息的投递和消费。

     NameServer通常也是集群的方式部署,各实例间相互不进行信息通讯。Broker是向每一台NameServer注册自己的路由信息,所以每一个NameServer实例上面都保存一份完整的路由信息。当某个NameServer因某种原因下线了,Broker仍然可以向其它NameServer同步其路由信息,Produce,Consumer仍然可以动态感知Broker的路由的信息。

配置NameServer:

   代码方式:producer.setNamesrvAddr("ip:port"); consumer.setNamesrvAddr("ip:port");多个实例的NameServer以";'分割。

   java 配置:rocketmq.namesrv.addr

  操作系统环境变量: NAMESRV_ADDR

  HTTP Endpoint.

Broker Server:

    broker主要负责消息的存储、投递和查询以及服务高可用保证。为了实现这些功能broker包含了以下几个重要子模块。

   Remoting Module:整个broker的实体,负责处理来自clients端的请求。

   Client Manager:负责管理客户端(Producer/Consumer)和维护Consumer的topic订阅信息

    Store Service:提供方便简单的API接口处理消息存储到物理硬盘和查询功能。

    HA Service:高可用服务,提供master broker 和 slave broker之间的数据同步功能。

    Index Service:根据特定的Message key对投递到broker的消息进行索引服务,以提供消息的快速查询。

broker-module.png



以上的内容只是对roketMQ进行一些基本的入门简介,后面会有相关的文章对具体的内容进行更深入的讨论,也欢迎大家提出宝贵的意见和发表自己的见解。

相关文章

  • rocketMQ基本入门介绍

    1、RocketMQ 简介: RocketMQ前身是阿里研发的一个队列模型的消息中间件,后开源给apache基金会...

  • RocketMQ:消息发送与消费

    在此之前,我们已经介绍过《RocketMQ:快速入门》和《RocketMQ:搭建集群》。现在我们已经准备好Rock...

  • RocketMQ源码解析

    RocketMQ基本模块 先看下官方简单介绍[https://github.com/apache/rocketmq...

  • RocketMQ基本概念介绍

    前言 初步接触了RocketMQ后发现其与传统意义上的实现JMS协议的消息队列(如ActiveMQ)存在着不小的区...

  • RocketMQ基本概念介绍

    初步接触了RocketMQ后发现其与传统意义上的实现JMS协议的消息队列(如ActiveMQ)存在着不小的区别,很...

  • RocketMQ系列(二)环境搭建

    RocketMQ的基本概念在上一篇中给大家介绍了,这一节将给大家介绍环境搭建。RocketMQ中最基础的就是Nam...

  • rocketmq总目录

    实战 rocketmq最简单的入门demo rocketmq的常用概念,接口和方法 rocketmq的正式部署 高...

  • 腾讯云TDMQ(RocketMQ)版介绍及入门

    一、入门介绍 1.1 TDMQ简介 TDMQ总共有4个版本,分别是RocketMQ版、Pulsar版、Rabbit...

  • rocketmq事务消息入门介绍

    说明 周五的时候发了篇:Rocketmq4.3支持事务啦!!!,趁着周末的时候把相关内容看了下,下面的主要内容就是...

  • rocketmq事务消息入门介绍

    引出分布式事务相关内容 这里主要是想说明下,是什么背景下面产生了此类问题。 首先我们来说说事务,说道事务,首先让我...

网友评论

      本文标题:rocketMQ基本入门介绍

      本文链接:https://www.haomeiwen.com/subject/uzveeftx.html