当先锋百科网

首页 1 2 3 4 5 6 7

简介:RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用erlang语言编写的,而群集和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。

RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成。

RabbitMQ服务支持下列操作系统:

  • Linux
  • Windows
  • MacOS
  • Solaris
  • FreeBSD
  • TRU64
  • Vxworks

RabbitMQ支持下列编程语言:

  • Java
  • Python
  • Ruby
  • Php
  • C#
  • JavaScript
  • Go
  • Elixir
  • Objective-C
  • Swift

主要特性:

  • 可伸缩性:集群服务
  • 消息持久化:从内存持久化消息到硬盘,再从硬盘加载到内存

以上摘自百度百科

 

RabbitMQ核心:

  • Server:Broker,接收客户端的连接,实现AMQP实体服务。
  • Virtual host: 虚拟地址,用于进行逻辑隔离,最上层的消息路由。一个Virtual Host里面可以有若干个Exchange和Queue,同一个Virtual Host里面不能有相同名称的Exchange或Queue
  • Exchange:交换机,接收消息,根据路由键转发消息到绑定的队列。
  • Queue:也称为Message Queue,消息队列,保存消息并将它们转发给消费者。
  • Routing Key:一个路由规则,虚拟机可用它来确定如何路由一个特定消息。
  • Binding:Exchange和Queue之间的虚拟连接,binding中可以包含routing key
  • Message:消息,服务器和应用程序之间传送的数据,由Properties和Body组成。Properties可以对消息进行修饰,比如消息的优先级、延迟等高级特性;Body则就是消息体内容。
  • Connection:连接,应用程序与Broker的网络连接。
  • Channel:网络信道,几乎所有的操作都在Channel中进行,Channel是进行消息读写的通道。客户端可建立多个Channel,每个Channel代表一个会话任务。

一、安装erlang

1、下载地址

选中一个自己想要的版本进行安装

1.1、默认

1.2、修改安装路径

1.3、默认

1.4、安装完成

二、环境变量配置

2.1、创建一个ERLANG_HOME指向erlang安装路径

2.2、在path里加入

2.3、设置成功后打开命令窗口输入erl回车

若失败可能是环境变量配置不成功,使用绝对路径重新配置

2.4、设置绝对路径

2.5、再次在打开命令行输入erl回车,配置成功

三、安装RabbitMQ

1、下载地址

2、安装

2.1、默认

2.2、修改安装路径

2.3、下一步

2.4、完成

3、安装RabbitMQ-plugins(管理页面,可查看RabbitMQ的exchange(交换器)、queue(消息队列)及routingkey(路由规则/关键词))

3.1、打开rabbitmq命令行、输入:rabbitmq-plugins enable rabbitmq_management

3.2、启动/停止管理工具

启动:net start rabbitmq

停止:net stop rabbitmq

3.3、启动管理工具并浏览

浏览器输入网址:http://localhost:15672,默认账号/密码:guest/guest,RabbitMQ服务访问端口为5672,管理工具端口为15672