rocketmq部署

zookeeper 部署+rocketmq 部署

落花浮王杯 提交于 2020-01-11 02:07:17
zookeeper 部署 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar zxf zookeeper-3.4.14.tar.gz cp -r zookeeper-3.4.14 /usr/local/zookeeper cd /usr/local/zookeeper/conf cp zoo_sample.cfg zoo.cfg vim zoo.cfg #添加如下内容 datadir=/usr/local/zookeeper/data/data dataLogDir=/usr/local/zookeeper/data/datalog mkdir -p /usr/local/zookeeper/data/data mkdir -p /usr/local/zookeeper/data/datalog cd ../bin/ ./zkServer.sh start #编辑启动文件 vim /usr/lib/systemd/system/zookeeper.service [Unit] Description=zookeeper After=network.target remote-fs.target nss-lookup.target

windows系统下安装RocketMQ

我怕爱的太早我们不能终老 提交于 2020-01-10 20:21:44
下载RocketMQ RocketMQ官网 根据版本,选择下载Binary的版本,我是下载的4.5.2的 部署RocketMQ 配置一下系统环境变量,和JDK的环境变量类似 变量名:ROCKETMQ_HOME 变量值:你本地下载的zip的解压路径 同时需要把新添加的变量,增加到系统变量 path 里面。配置 %ROCKETMQ_HOME%\bin; 配置到 path 里面即可。 启动name server 进入到RocketMQ的解压目录的bin目录,执行启动name server的命令: start mqnamesrv.cmd 可以把该启动命令编写一个简单的启动脚本:(该脚本放在解压出来的MQ同级目录) @echo off START %~dp0\rocketmq-all-4.5.2-bin-release\bin\mqnamesrv.cmd 启动broker 执行启动命令: start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true 或者新建可执行脚本:roketmq-mqbroker-start.bat @echo off START %~dp0\rocketmq-all-4.5.2-bin-release\bin\mqbroker.cmd -n 127.0.0.1:9876

手把手带你了解消息中间件(3)——RocketMQ

蓝咒 提交于 2020-01-10 00:21:31
一、RocketMQ简介   RocketMQ作为一款纯 java 、分布式、队列模型的开源消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。 二、RocketMQ架构   如图所示为RocketMQ基本的部署结构,主要分为NameServer集群、Broker集群、Producer集群和Consumer集群四个部分。   Broker在启动的时候会去向NameServer注册并且定时发送心跳,Producer在启动的时候会到NameServer上去拉取Topic所属的Broker具体地址,然后向具体的Broker发送消息 1、NameServer   NameServer的作用是Broker的注册中心。   每个NameServer节点互相之间是独立的,没有任何信息交互,也就不存在任何的选主或者主从切换之类的问题,因此NameServer是很轻量级的。单个NameServer节点中存储了活跃的Broker列表(包括master和slave),这里活跃的定义是与NameServer保持有心跳。 2、Topic、Tag、Queue、GroupName   Topic 与 Tag 都是业务上用来归类的标识,区分在于 Topic 是一级分类,而 Tag 可以理解为是二级分类 1) Topic(话题)   Topic是生产者在发送消息和消费者在拉取消息的类别

浅谈消息队列之RocketMQ

≯℡__Kan透↙ 提交于 2020-01-07 21:48:30
什么是消息队列? 为什么要用消息队列? 即,应用场景是什么,也就是用了有什么好处 解耦 多应用间通过消息队列对同一消息进行处理,避免调用接口失败导致整个过程失败 异步 多应用对消息队列中同一消息进行处理,应用间并发处理消息,相比串行处理,减少处理时间 削峰/限流 避免流量过大导致应用系统挂掉的情况 使用消息队列需要注意什么? 系统复杂性增加 如何保证消息队列是高可用,即做到集群高可用 如何保证消费的可靠性传输,即不丢消息 如何保证消息不被重复消费,即保证消费的幂等性 如何保证消息的顺序性,即保证数据的逻辑正确性 简单分析RocketMQ的原理 高可用 上架构 NameServer : 维持心跳和提供Topic-Broker的关系数据,多个Namesrv之间相互没有通信,单台Namesrv宕机不影响其他Namesrv与集群;即使整个Namesrv集群宕机,已经正常工作的Producer,Consumer,Broker仍然能正常工作,但新起的Producer, Consumer,Broker就无法工作,nameserver不会有频繁的读写,所以性能开销非常小,稳定性很高 Broker : Broker与Namesrv的心跳机制:单个Broker跟所有Namesrv保持心跳请求,心跳间隔为30秒,心跳请求中包括当前Broker所有的Topic信息 高可靠并发读写服务

rocketMQ之三 集群概念和工作流程

岁酱吖の 提交于 2020-01-06 21:51:30
集群概念和工作流程 各个角色的介绍 producer:消息的发送者 consumer:消息的接受者 Broker:暂存和传输消息 NameServer:管理Broker Topic:区分消息的种类,一个发送者可以发送消息给一个或者多个Topic,一个消息的接受者可以订阅一个或者多个Topic消息 tag:消息的标签,和topic基本是这样的关系 Message Queue:相当于Topic的分区,用于并行发送和接受消息 集群的特点 NameServer是一个几乎无状态节点,可集群部署,节点之间无任何信息同步 Broker部署相对复杂,Broker分为Master和Slave,一个Master可以对应多个Slave,但是一个Slave只能对应一个Master, Master和Slave的对应关系通过制定相同的BrokerName,不同的BrokerId来定义,BorkerId为0表示Master,非0便是Slave, Mater也可以部署多个,每个Broker和NameServer集群中所有节点建立长连接,定时注册Topic信息到所有NameServer Producer和NameServer集群中的其中一份节点建立长连接(随机),定期从NameServer取Topic路由信息,并向Topic服务的Master 建立长连接,且定时想Master发送心跳,Product完全无状态

RocketMQ多Master多Slave模式部署

南笙酒味 提交于 2020-01-06 07:17:45
每个 Master 配置一个 Slave,有多对Master-Slave,HA采用同步双写方式,主备都写成功,向应用返回成功。 优点:数据与服务都无单点,Master宕机情况下,消息无延迟,服务可用性与数据可用性都非常高。 缺点:性能比异步复制模式略低,大约低10%左右,发送单个消息的RT会略高。目前主宕机后,备机不能自动切换为主机,后续会支持自动切换功能。 ### 先启动 NameServer ### 在机器 A,启动第一个 Master ### 在机器 B,启动第二个 Master ### 在机器 C,启动第一个 Slave ### 在机器 D,启动第二个 Slave 以上 Broker 与 Slave 配对是通过指定相同的brokerName 参数来配对,Master的 BrokerId 必须是 0,Slave 的BrokerId 必须是大与 0 的数。 另外一个 Master 下面可以挂载多个 Slave,同一 Master 下的多个 Slave通过指定不同的 BrokerId来区分。 1. 服务器环境如下图所示 ,四台机器,IP位7为主节点,149是7的从节点。105是主节点,160是105的从节点 序号 IP 用户名 角色 模式 1 192.168.1.7 root nameServer1,brokerServer1 Master1 2 192.168.1.105

RocketMQ在windows环境下的安装

梦想与她 提交于 2020-01-02 03:14:30
原博地址: https://www.jianshu.com/p/4a275e779afa 一.预备环境 1.系统 Windows 2. 环境 JDK1.8、Maven、Git 二. RocketMQ部署 1.下载 1.1地址: http://rocketmq.apache.org/release_notes/release-notes-4.2.0/ 1.2选择‘Binary’进行下载 1.3解压已下载工程 2. 配置 2.1 系统环境变量配置 变量名:ROCKETMQ_HOME 变量值:MQ解压路径\MQ文件夹名 2.2重启服务器 3. 启动 3.1 启动NAMESERVER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqnamesrv.cmd’,启动NAMESERVER。成功后会弹出提示框,此框勿关闭。 3.2 启动BROKER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’,启动BROKER。成功后会弹出提示框,此框勿关闭。 假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。保存并重新执行start语句。 三.

windows下RocketMQ安装部署

╄→尐↘猪︶ㄣ 提交于 2020-01-02 03:14:01
一. 预备环境 1. 系统 Windows 2. 环境 JDK1.8、Maven、Git 二. RocketMQ部署 1. 下载 1.1地址: http://rocketmq.apache.org/release_notes/release-notes-4.2.0/ 1.2选择‘Binary’进行下载 1.3解压已下载工程 2. 配置 2.1 系统环境变量配置 变量名:ROCKETMQ_HOME 变量值:MQ解压路径\MQ文件夹名 2.2重启服务器 3. 启动 3.1 启动NAMESERVER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqnamesrv.cmd’,启动NAMESERVER。成功后会弹出提示框,此框勿关闭。 3.2 启动BROKER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’,启动BROKER。成功后会弹出提示框,此框勿关闭。 假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。保存并重新执行start语句。 三. RocketMQ插件部署 1. 下载 地址:https://github.com

java架构之路-(MQ专题)RocketMQ从入坑到集群详解

爷,独闯天下 提交于 2020-01-02 03:13:29
  这次我们来说说我们的RocketMQ的安装和参数配置,先来看一下我们RocketMQ的提出和应用场景吧。   早在2009年,阿里巴巴的淘宝第一次提出了双11购物狂欢节,但是在2009年,服务器无法承受到大规模的并发,导致了大规模宕机停运,当时还是IOE的服务架构,也就是没有我们的消息队列中间件,直接由IBM的小型机、Oracle数据库、EMC存储设备来提供服务的,可想而知,我们的大并发场景,IOE是无法承受的,RocketMQ是由我们的国内的阿里巴巴在2010年开始由我们的阿里云的王坚博士组件团队,来处理我们的去IOE服务架构,也就产生了我们的RocketMQ中间件,经历了阿里巴巴内部的不断尝试和实践下,在2016年11月,阿里将RocketMQ捐献给Apache软件基金会,正式成为孵化项目,现在已经在我们Apache软件基金会毕业了,并且成为了Apache软件基金会的顶级项目。可想而知RocketMQ还是很成熟很可靠的。   说到这也就是知道了我们的RocketMQ可以于我们的消息中间件来传递我们的消息,还有很多广泛的应用场景,比如我们的异步处理事件,分布式事务协调,对于高并发的削峰平谷处理,MQ的思想还是很出众的,下面我们来先一下RocketMQ的安装吧。 安装单机(运行环境JDK版本:1.8.0_221以上)   1.下载。rocketmq版本:rocketmq-all

RocketMq的安装使用

若如初见. 提交于 2020-01-02 03:13:03
RocketMq的安装使用 、一.预备环境 1.系统 Windows 2. 环境 JDK1.8、Maven、Git 1.下载 1.1地址: http://rocketmq.apache.org/release_notes/release-notes-4.2.0/ 1.2选择‘Binary’进行下载 1.3解压已下载工程 2. 配置 2.1 系统环境变量配置 变量名:ROCKETMQ_HOME 变量值:MQ解压路径\MQ文件夹名 3. 启动 3.1 启动NAMESERVER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqnamesrv.cmd’,启动NAMESERVER。成功后会弹出提示框,此框勿关闭。 3.2 启动BROKER Cmd命令框执行进入至‘MQ文件夹\bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’,启动BROKER。成功后会弹出提示框,此框勿关闭。 假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。保存并重新执行start语句 三. RocketMQ插件部署 1. 下载 地址:https://github.com/apache/rocketmq