博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RabbitMq集群搭建
阅读量:7252 次
发布时间:2019-06-29

本文共 2364 字,大约阅读时间需要 7 分钟。

  RabbitMq有三种模式且集群模式仅2种:

  单一模式:即单机情况不做集群,就单独运行一个rabbitmq而已。
  普通模式:默认模式,以两个节点(rabbit_A、rabbit_B)为例来进行说明。对于Queue来说,消息实体只存在于其中一个节点rabbit_A(或者rabbit_B),rabbit_A和rabbit_B两个节点仅有相同的元数据,即队列的结构。当消息进入rabbit_A节点的Queue后,consumer从rabbit_B节点消费时,RabbitMQ会临时在rabbit_A、rabbit_B间进行消息传输,把A中的消息实体取出并经过B发送给consumer。所以consumer应尽量连接每一个节点,从中取消息。即对于同一个逻辑队列,要在多个节点建立物理Queue。否则无论consumer连rabbit_A或rabbit_B,出口总在rabbit_A,会产生瓶颈。当rabbit_A节点故障后,rabbit_B节点无法取到rabbit_A节点中还未消费的消息实体。如果做了消息持久化,那么得等rabbit_A节点恢复,然后才可被消费;如果没有持久化的话,就会产生消息丢失的现象。
  镜像模式:把需要的队列做成镜像队列,存在与多个节点属于RabbitMQ的HA方案。该模式解决了普通模式中的问题,其实质和普通模式不同之处在于,消息实体会主动在镜像节点间同步,而不是在客户端取数据时临时拉取。该模式带来的副作用也很明显,除了降低系统性能外,如果镜像队列数量过多,加之大量的消息进入,集群内部的网络带宽将会被这种同步通讯大大消耗掉。所以在对可靠性要求较高的场合中适用。

一、RabbitMq环境安装

  a.准备至少两台以上windowsserver服务器eg:【IP:192.168.1.62 , IP:192.168.1.79】最好内网环境下
  b.下载otp_win64_20.1与rabbitmq-server安装包【下载地址:http://www.rabbitmq.com/install-windows.html】
  c.先安装otp_win64_20.1再安装rabbitmq-server

二、配置环境变量

  a.添加系统环境变量 ERLANG_HOME
  
  b.添加系统环境变量Path 值%ERLANG_HOME%\bin
       
  三、运行CMD;查看【erl】是否安装成功
  
  四、安装rabbitmq-server
  a.点击rabbitmq-server.exe 下一步下一步直到完成 
  b.启用Dos窗体运行rabbitmq-plugins enable rabbitmq_management命令进行安装Rabbitmq服务
  五、运行http://localhost:15672/ 默认帐号:guest 密码:guest 
 
 进入系统后添加自定义帐号和密码 分配administrator权限

  

  六、搭建RabbitMQ集群环境
  a.绑定ip计算机名称 (C:\Windows\System32\drivers\etc)
  
  
 b.打开"C:\Users\Administrator\AppData\Roaming\RabbitMQ"路径在改路径下创建环境变量文件'rabbitmq-env.conf' 
  NODENAME=rabbit@PC-201501051139
       NODE_IP_ADDRESS=192.168.1.62
  NODE_PORT=5672
  RABBITMQ_MNESIA_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\db
  RABBITMQ_LOG_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\log

   

  c.关闭【服务器192.168.1.62】与【服务器192.168.1.79】中的RabbitMQ服务并统一erlang cookie;Erlang cookie就是/var/lib/rabbitmq/.erlang.cookie这个文件中的内容。
  将【服务器192.168.1.62】的erlang cookie复制到【服务器192.168.1.79】节点中 覆盖位置【C:\Windows和C:\Users\Administrator】并设置对应文件权限【目前我使用的everyone未发现其问题】
    d.设置Rabbitmq服务登录帐号    
  七、
集群搭建将【192.168.1.79】的nods添加到【192.168.1.62】中
  打开[192.168.1.79]电脑 配置环境变量找到RabbitMQ的安装目录,本实例为"C:\RabbitMq8879\RabbitMq\rabbitmq_server-3.7.6\sbin"。将"C:\RabbitMq8879\RabbitMq\rabbitmq_server-3.7.6"添加到Path中(或者你不配置环境变量直接cd到安装目录的sbin文件下也是可以的)
  输入命令
  rabbitmqctl stop_app
  rabbitmqctl join_cluster rabbit@PC-201501051139
  rabbitmqctl start_app
  验证在两台虚拟机下控制台下输入rabbitmqctl cluster_status如看到类似图片则搭建成功

 

  

 

转载于:https://www.cnblogs.com/tx720/p/9914997.html

你可能感兴趣的文章
Android中资源文件assets和res下面raw文件的使用不同点
查看>>
汉子字符转换成大写英文字母开头。。
查看>>
SQL优化(数据库的优化)
查看>>
android学习摘记——关于android ListView的美化
查看>>
Python--day72--ajax简介
查看>>
初识Python(windows)——下载、安装、使用
查看>>
NetCore Tag Helpers 和 HTML Helpers 和 Web 服务器控件比较
查看>>
Hadoop常用命令
查看>>
vue-cli 脚手架项目简介(一) - package.json
查看>>
js的数据类型及类型转换
查看>>
wpa_cli 关联无线网络
查看>>
MySQL批量数据脚本示例
查看>>
Can realize the needs of the individual, MBT Sini
查看>>
规则引擎以及blaze 规则库的集成初探之二——JSR94 的规则引擎API和实现
查看>>
core dump文件生成
查看>>
同步异步, 阻塞和非阻塞
查看>>
SQL查询案例:行列转换[行转列, 使用 CASE WHEN 处理]
查看>>
XML文档注释
查看>>
【MongoDB】1、MongoDB for Java
查看>>
p3396 哈希冲突(暴力)
查看>>