消息中间件系列教程(04) -RabbitMQ -简介&安装

1. 简介

RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现。AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的 IIOP ,或者是 SOAP 等),但是在异步消息处理中却不是这样,只有大企业有一些商业实现(如微软的 MSMQ ,IBM 的 Websphere MQ 等),因此,在 2006 年的 6 月,Cisco 、Redhat、iMatix 等联合制定了 AMQP 的公开标准。

RabbitMQ是由RabbitMQ Technologies Ltd开发并且提供商业支持的。该公司在2010年4月被SpringSource(VMWare的一个部门)收购。在2013年5月被并入Pivotal。其实VMWare,Pivotal和EMC本质上是一家的。不同的是VMWare是独立上市子公司,而Pivotal是整合了EMC的某些资源,现在并没有上市。

RabbitMQ官网:http://www.rabbitmq.com
AMQP协议介绍:https://baike.baidu.com/item/AMQP/8354716?fr=aladdin
在这里插入图片描述
注意:RabbitMQ是采用erlang语言开发的,所以必须有erlang环境才可以运行。

Erlang编程语言最初目的是进行大型电信交换设备的软件开发,是一种适用于大规模并行处理环境的高可靠性编程语言。随着多核处理器技术的日渐普及,以及互联网、云计算等技术的发展,该语言的应用范围也有逐渐扩大之势。

Erlang— 初衷理念实现抗高并发语言

百度百科介绍:https://baike.baidu.com/item/Erlang%E8%AF%AD%E8%A8%80/20864044?fr=aladdin

2. 几种主流MQ的对比

ActiveMQRabbitMQKafka
优点遵循JMS规范,安装方便集成Erlang天生的并发性,最初用于金融行业,稳定性和安全性有保障依赖Zookeeper,可动态扩展节点,高性能、高吞吐量、无限扩容、消息可指定追溯
缺点有可能会丢失消息。现在的中心是下一代产品apollo上,所以5.x的产品不怎么维护了Erlang语言难度较大,不支持动态扩展严格的顺序机制,不支持消息优先级,不支持标准的消息协议,不利于平台迁移
支持协议AMQP,OpenWire,Stomp,XMPPAMQP
应用适用于中小企业,不适合千个队列的应用适合对稳定性要求高的企业及应用应用在大数据日志处理或对实时性,可靠性(少量数据丢失)要求比较低的场景应用

3. RabbitMQ的安装

安装RabbitMQ有两个主要步骤:

  1. 安装Erlang语言
  2. Scot(Rabbit环境需要Scot)
  3. 安装Rabbit

Linux下参考:《在linux下安装配置rabbitMQ详细教程》
Mac下参考:《MacOS下安装RabbitMQ》
Windows下参考:《Windows 下安装RabbitMQ服务器及基本配置》

我的系统是MacOS,安装界面如下:
在这里插入图片描述
安装成功后:
在这里插入图片描述
进入rabbitmq的安装目录:

/usr/local/Cellar/rabbitmq/3.8.2/sbin

启动RabbitMQ:

 ./rabbitmq-server

启动成功后,浏览器输入(账号密码都是guest):http://localhost:15672
在这里插入图片描述

附录(Mac下RabbitMQ相关的命令):

1.安装

shell brew install rabbitmq 

2.启动及关闭RabbitMQ服务(进入安装目录的sbin目录后操作)

  • 2.1前台启动
shell sudo ./rabbitmq-server     

shell sudo /usr/local/Cellar/rabbitmq/3.7.7_1/sbin/rabbitmq-server-detacted 
  • 2.2 后台启动:
shell sudo ./rabbitmq-server -detached

3.后台关闭

shell sudo ./rabbitmqctl stop 
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值