RocketMQ3.2.6安装部署及调用
1、RocketMQ部署架构
所有IP都是127.0.0.1,其中NameServer一个,Broker一个,Producer一个,Consumer一个

2、 RocketMQ环境搭建
(1).下载安装包 下载地址:https://github.com/alibaba/RocketMQ/releases

(2).解压,并进入bin目录

(3).启动name server

(4).启动broker

(5).启动完成


3、 RocketMQ调用使用JAR:

4、 RocketMQ一些概念
RocketMQ以Topic来管理不同应用的消息。对于生产者而言,发送消息是,需要指定消息的Topic,对于消费者而言,在启动后,需要订阅相应的Topic,然后可以消费相应的消息。Topic是逻辑上的概念,在物理实现上,一个Topic由多个Queue组成,采用多个Queue的好处是可以将Broker存储分布式化,提高系统性能。

RocketMQ中,producer将消息发送给Broker时,需要制定发送到哪一个队列中,默认情况下,producer会轮询的将消息发送到每个队列中(所有broker下的Queue合并成一个List去轮询)。

对于consumer而言,会为每个consumer分配固定的队列(如果队列总数没有发生变化),consumer从固定的队列中去拉取没有消费的消息进行处理。

Producer

Producer端(属于client)的逻辑概述:

producer端的逻辑都比较简单,将消息发送到某个Queue中即可,具体发送到那个Queue可以由用户控制(MessageQueueSelector接口),默认情况下,将轮询方式选择Queue。在producer端,会从NameServer将所有Broker的Topic及对应的Queue信息(即:TopicRoute信息)拉取到本地,然后根据(brokerName, queueId)组建成一个List。因此在MessageQueueSelector,可以看到所有的Queue信息。

RocketMQ将topic的消息以多个Queue来管理,使得其较为容易的就可以进行水平扩展,提供系统吞吐力。这样分布带来的问题,就是从全局上不能做到顺序性(很多时候也并不需要全局上的顺序性)。

RocketMQ提到支持顺序消息,实际上是指基于Queue级别的顺序。用户将某些需要满足顺序的一批消息(比如电商某个订单号的一系列后续操作、比如数据库的某个主键的insert、delete、update等操作)发送到固定的某个Queue中,则从这个Queue消费消息的consumer,针对这一批消息是顺序消费。

问题1:针对顺序消息的队列,是否可以做到不停服务下的集群动态扩展?

Consumer

consumer逻辑稍微复杂一点。初步思考,consumer端至少需要处理:

(1) 消息的获取

(2) offset(消费进度)的管理与存储

(3) 集群消费模式下,Queue的分配问题(rebalance)

RocketMQ对外提供了两种不同形式的Consumer:PushConsumer和PullConsumer。顾名思义,对于PullConsumer而言,用户需要主动调用相应的接口去拉取未消费的消息。对于PushConsumer而言,用户提供消息处理的CallBack,有未曾消费的消息时,会主动回调这个CallBack来处理消息。虽从用户角度而言,Consumer存在主动(pull)和被动(push),但RocketMQ本身的broker端仅仅保存所有的消息,并不负责push消息,因此PushConsumer的底层实现也是有一个长连接主动去broker上拉取未消费的消息,然后回调用户的callback逻辑。
5、 RocketMQ如何使用
A. 生产者


B. 消费者



C. 控制器中调用

D. 启动消费者任务。注意:切记不可以在每次发送消息时,都调用start方法

6、 RocketMQ工作原理

转载于:https://www.cnblogs.com/luweiwei/p/5968451.html

RocketMQ3.2.6安装部署及调用相关推荐

  1. VS.NET安装部署深入研究

    相信很多人都做过安装程序,目前最大功能最全的当属InstallShield,但是InstallShield的语法学习起来实在费劲, 相对而言vs.net自带的安装部署短小精悍,且使用C#语法,对于一般 ...

  2. DSVS7050签名服务器的网站,吉大正元数字签名服务器-安装部署手册(COM版 VCTK_S接口)2.1.1.doc...

    吉大正元数字签名服务器-安装部署手册(COM版 VCTK_S接口)2.1.1 数字签名服务器v2.1.1 安装部署手册 (VSTK接口 COM版) V2.1.1 长 春 吉 大 正 元 信 息 技 术 ...

  3. zabbix 3.2.2 server端(源码包)安装部署 (一)【转】

    环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...

  4. puppet完全攻略(一)puppet应用原理及安装部署

    puppet完全攻略(一)puppet应用原理及安装部署 puppet简介   puppet官方网站:http://www.puppetlabs.com/ puppet中文wiki:http://pu ...

  5. twitter storm学习 - 安装部署问题汇总

    2019独角兽企业重金招聘Python工程师标准>>> 已经碰到的或者将来碰到的关于安装部署方面的问题以及解决方法,先挖个坑 1.提交的topology在admin界面上看emitt ...

  6. Nagios安装部署与Cacti整合文档超精细版本

    Nagios安装部署与Cacti整合文档超精细版本 (2011-06-01 01:28) 分类: nagios监控 Nagios安装部署与Cacti整合文档 系统环境:CentOS5.4 文档版本:V ...

  7. Wix 安装部署教程(十六) -- 自动生成多语言文件

    Wix 安装部署教程(十六) -- 自动生成多语言文件 原文:Wix 安装部署教程(十六) -- 自动生成多语言文件 因为持续集成需要,所有项目编译完之后生成一个多语言的安装包.之前生成mst文件都是 ...

  8. 二进制安装部署 4 kubernetes集群---超详细教程

    二进制安装部署kubernetes集群---超详细教程 前言:本篇博客是博主踩过无数坑,反复查阅资料,一步步搭建完成后整理的个人心得,分享给大家~~~ 本文所需的安装包,都上传在我的网盘中,需要的可以 ...

  9. Wix 安装部署教程(十二) -- 自动更新WXS文件

    原文:Wix 安装部署教程(十二) -- 自动更新WXS文件 上一篇分享了一个QuickWIX,用来对比两个工程前后的差异,但是这样还是很繁琐,而且昨天发现有Bug,目录对比有问题.这次改变做法,完全 ...

最新文章

  1. 知乎热议:国家何时整治程序员的高薪现象?网友:用命和头发换的钱都被人眼红!...
  2. Sql Server 数据分页
  3. Win32 多线程学习总结
  4. 云计算基础设施智能运维的下一段征程,你们准备好了吗?
  5. Markdown 如何编写表格(格式)?
  6. 游戏中的数学与物理学 第二版_在游戏中启蒙幼儿的数学能力和逻辑思维能力...
  7. php粉丝关注功能,Redis实现用户关注功能
  8. 前端实现数字快速递增_天正CAD教程之递增文字应用实例
  9. ICCV2021|STMN:双记忆网络提升视频行人ReID性能
  10. python批处理将图片进行放大实例代码
  11. 微信小程序自定义弹窗组件
  12. 支持嵌入的手机号码识别sdk软件
  13. 两年的前端程序员的反省与总结
  14. 我,马斯克:地球首富却要葬在火星
  15. 计算机磁盘图标显示异常,Win7磁盘图标显示错误是怎么回事?修复分区磁盘图标异常教程...
  16. 洛谷八连测——关于取模与思维僵化
  17. 安卓手机远程控制DIY智能家居设备(ESP8266)
  18. 华为网络----OSPF路由协议理论+实验(一)
  19. 如何正确开展网络口碑营销?
  20. WinLicenseThemida 2019革命性升级,软件加密后破解难度突破天际

热门文章

  1. datatable相同列合并_使用Power Query合并查询
  2. postmapping注解参数说明_这么写参数校验(validator)就不会被劝退了~
  3. jQuery的get()、map()、map().get().join()简单应用
  4. windows下DOS命令杀掉Nginx应用进程
  5. layUI table 内容超出宽度怎么换行显示,而不是显示省略号
  6. Windows系统的32位和64位系统区别
  7. 静态网站与动态网站的区别 静态网站生成工具
  8. 【PAT甲】1001 A+B Format (20分) 格式化输出
  9. 【codevs1004】四子连棋
  10. tesseract如何在Linux下卸载,Tesseract装配