简介:
RabbitMQ作为一个消息代理,主要和消息打交道,负责接收并转发消息。
1,Erlang 语言编写的RabbitMQ。
2,使用的是AMQP(advanced Message Queuing Protocol)协议, 这种协议是广泛独立于语言的消息协议。
应用场景:
适用于排队算法、秒杀活动、消息分发、异步处理、数据同步、处理耗时任务、CQRS等应用场景
rabbitmq消息模型:
Publisher:生产者,消息的发送方。
Connection:网络连接。
Channel:信道,多路复用连接中的一条独立的双向数据流通道。
Exchange:交换器(路由器),负责消息的路由到相应队列。
Binding:队列与交换器间的关联绑定。消费者将关注的队列绑定到指定交换器上,以便Exchange能准确分发消息到指定队列。
Queue:队列,消息的缓冲存储区。
Virtual Host:虚拟主机,虚拟主机提供资源的逻辑分组和分离。包含连接,交换,队列,绑定,用户权限,策略等。
Broker:消息队列的服务器实体。
Consumer:消费者,消息的接收方。
安装:
mac 安装:
1,brew install rabbitmq
2,设置环境变量 `sudo vi /etc/profile
//加入以下两行
export RABBIT_HOME=/usr/local/Cellar/rabbitmq/3.7.4
export PATH=RABBIT_HOME/sbin
// 立即生效
source /etc/profile`
使用:
1 rabbitmq-server -detached // 后台启动
2, rabbitmactl status //查看状态
3.RabbitMQ的管理后台http://localhost:15672
默认用户名密码:guest/guest
4,rabbitmqctl stop //关闭