A. 资源与参考文档

官网:https://www.rabbitmq.com/

B. 学习目的

部门目前使用其他部门维护的 WebLogic 的 JMS 消息服务,缺乏足够的技术支持与运维支持。随着基于 Spring Cloud 的微服务化改造的启动与团队技术能力提升,服务内部与服务之间将会更加依赖消息队列,因此部门需要维护自己的消息服务中间件。

在 WebLogic、ActiveMQ、RabbitMQ、Kafka 等消息队列中,最终选择了 RabbitMQ 作为部门主要消息服务中间件。主要原因有:

  1. 部分业务需求需要保证消息能够持久化,不丢失。ZeroMQ 出局,Kafka 有缺陷
  2. 与 Spring Cloud Bus 集成,目前只支持 RabbitMQ 与 Kafka
  3. 性能考虑,Kafka >> RabbitMQ > ActiveMQ
  4. 成熟度考虑(可用性、可靠性、稳定性)与规范性考虑(支持开放协议),RabbitMQ 比 Kafka 优秀

学习目标:

  • 学习 RabbitMQ 基础知识
  • 提供 Java 语言 Demos 供开发人员参考
  • 集群方案
  • 管理方案(用户权限、项目隔离、资源限制)
  • 监控方案

C. Linux 环境安装

a. 简单记录在公司内网测试环境 RedHat 6.5 服务器上安装 RabbitMQ 的步骤

1. 安装 Erlang 环境。
RabbitMQ 使用 Erlang 语言开发,所以必须先安装 Erlang 环境。对于无法联网的服务器,推荐下载 RabbitMQ 特制的无依赖的 Erlang RPM 包安装,下载地址:https://github.com/rabbitmq/erlang-rpm/releases
使用 yum 命令安装:yum install erlang-19.3.0-1.el6.x86_64.rpm
可以通过执行 erl 查看是否安装成功
2. 安装依赖
RabbitMQ 3.6.2 开始依赖 socat,下载地址:http://www.dest-unreach.org/socat/
使用 yum 命令安装:yum install socat-1.7.3.2-1.1.el6.x86_64.rpm
3. 安装 RabbitMQ
下载 RabbitMQ 最新版本,下载地址:https://www.rabbitmq.com/install-rpm.html
使用 yum 命令安装:yum install rabbitmq-server-3.6.8-1.el6.noarch.rpm

b. 启停 RabbitMQ

rabbitmq-server start
rabbitmq-server stop
(以上命令在 /sbin/service 目录中)

c. 管理插件

虽然可以通过 RabbitMQ 命令完成所有的管理工作,但是官方提供的管理插件提供了管理页面,方便很多。
RabbitMQ 默认情况下启动时不开启任何插件,需要先通过命令开启管理插件。
查看插件情况:rabbitmq-plugins list
启动管理插件:rabbitmq-plugins enable rabbitmq_management

管理插件启动成功后,可以访问 http://ip:15672 进入管理页面。

d. 创建用户

RabbitMQ 有一个默认用户 guest/guest,默认用户只能通过本地访问。所以需要先通过 RabbitMQ 命令创建用户:
rabbitmqctl add_user admin Pass1234
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p "/" admin "." "." ".*"

这样就可以使用 admin/Pass1234 从本地登录管理页面了。

D. Windows 环境安装

http://www.rabbitmq.com/install-windows.html

  1. 安装 Erlang 环境 otp_win64_19.3.exe
  2. 安装 RabbitMQ rabbitmq-server-3.6.10.exe。安装完成后,RabbitMQ 自动注册为服务并且设置为自动开启
  3. 从 Start 菜单打开 RabbitMQ Command Prompt,参考上面 Linux 环境执行相同的命令

RabbitMQ入门_01_简介与安装的更多相关文章

  1. RabbitMQ入门教程(一):安装和常用命令

    原文:RabbitMQ入门教程(一):安装和常用命令 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...

  2. Nginx入门教程-简介、安装、反向代理、负载均衡、动静分离使用实例

    场景 Nginx入门简介和反向代理.负载均衡.动静分离理解 https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102790862 Ub ...

  3. 1.RABBITMQ 入门 - WINDOWS - 获取,安装,配置

    一. 背景:     公司项目有所改动,要求微信(移动端调用的接口),日志接口换位log4net,全部改成以rabbitMQ作为服务支持, 二.本地环境:     windows 10 enterpr ...

  4. RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)

    最近在学习Spring Cloud,其中消息总线Spring Cloud Bus是必不可少的,但是Spring Cloud Bus目前只支持RabbitMQ和kafka,因此学习RabbitMQ势在必 ...

  5. Maven入门之简介与安装

    一.Maven简介 1.什么是Maven? Maven是一个项目管理工具和集成编译工具,它主要包含如下内容: –一个项目对象模型(Project Object Model), –一组标准集合, –一个 ...

  6. 2.RABBITMQ 入门 - WINDOWS - 生产和消费消息 一个完整案例

    关于安装和配置,见上一篇 1.RABBITMQ 入门 - WINDOWS - 获取,安装,配置 公司有需求,要求使用winform开发这个东西(消息中间件),另外还要求开发一个日志中间件,但是也是要求 ...

  7. RabbitMQ入门:总结

    随着上一篇博文的发布,RabbitMQ的基础内容我也学习完了,RabbitMQ入门系列的博客跟着收官了,以后有机会的话再写一些在实战中的应用分享,多谢大家一直以来的支持和认可. RabbitMQ入门系 ...

  8. RabbitMQ入门:Hello RabbitMQ 代码实例

    在之前的一篇博客RabbitMQ入门:认识并安装RabbitMQ(以Windows系统为例)中,我们安装了RabbitMQ并且对其也有的初步的认识,今天就来写个入门小例子来加深概念理解并了解代码怎么实 ...

  9. [转]RabbitMQ入门教程(概念,应用场景,安装,使用)

    原文地址:https://www.jianshu.com/p/dae5bbed39b1 RabbitMQ 简介 RabbitMQ是一个在AMQP(Advanced Message Queuing Pr ...

随机推荐

  1. mycelipse中关于编码的配置

    (1)修改工作空间的编码方式: Window->Preferences->General->Workspace->Text file Encoding在Others里选择需要的 ...

  2. postgresql----排序ORDER BY,分组GROUP BY,分页OFFSET&&LIMIT

    一.GROUP BY 使用GROUP BY分组查询在SELECT子句中只能出现分组字段和聚合函数,HAVING子句相当于WHERE,使用条件过滤数据. 示例1.以a,b分组查询tbl_insert表, ...

  3. 使用 Capistrano 进行自动化部署

    最近在折腾这个,弄了好多次都不成功,看了官方文档和很多博客,都没有说清楚,因此,我觉得有必要把它记录下来,以帮助更多像我这样被弄得烦躁的人. 首先是安装,其实 Ubuntu 上面安装 Capistra ...

  4. Centos7更改yum源与更新系统

    [1] 首先备份 /etc/yum.repos.d/CentOS-Base.repo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/Cen ...

  5. RabbitMQ(转)

    add by zhj: 如果用Python,那可以用celery,它是一个分布式任务队列,它的broker可以选择Rabbitmq/Redis/Mongodb等, celery通过Kombu这个lib ...

  6. 【Python】通过python代码实现demo_test环境的登录,通过csv/txt/excel文件批量添加课程并开启课程操作--(刚开始 项目 页面 模块 元素这种鸟 被称作pageobject 等这些搞完 然后把你的定位器、数据 和脚本在分离 就是传说中那个叫数据驱动 的鸟)

    一.1.通过csv文件批量导入数据 1 from selenium import webdriver from time import ctime,sleep import csv #循环读取每一行每 ...

  7. ssh 配置文件讲解大全 ssh调试模式 sftp scp strace进行调试 特权分离

    ssh 配置文件讲解大全  ssh调试模式  sftp scp strace进行调试  特权分离 http://blog.chinaunix.net/uid-16728139-id-3265394.h ...

  8. eclipse怎么导出可执行jar包

    在eclpse中找到你要导出的java程序 选中它 单击文件 -->export 在弹出的export对话框中找到 jar File 单击选中-->next 按图示顺序依次 选好你的jav ...

  9. 文本IO 二进制IO

    一.文本IO  字符流 使用PrintWriter写入文件后,必须调用close(),否则数据不能正确保存在文件中. Scanner的next()读取一个由分隔符分隔的字符串,nextLine()读取 ...

  10. sublime text 2windows下常用快捷键

    Ctrl + X 删除行 Ctrl + L 选取行 Ctrl + Shift + M 选取括号内的所有东西 Ctrl + Shift + D 复制行 Ctrl + Enter 插入下一行 Ctrl + ...