MacOS安装
安装命令:brew install rabbitmq
启停rabbitmq:brew services start/stop rabbitmq
rabbitmq默认端口:5672
启动服务后访问 http://localhost:15672/查看管理页面
默认账号密码:guest guest
rabbitmq-plugins list查看插件
rabbitmq-plugins enable/disbale xxx 启用/停用插件
ubuntu安装
sudo apt-get update
sudo apt-get install erlang-nox
sudo apt-get install rabbitmq-server
# 添加账号
sudo rabbitmqctl add_user admin 123456
# 设置角色
#administrator,超级管理员角色,可以登录控制台查看所有信息,并可以对用户、策略操作
#monitoring,监控者角色,可以登录控制台查看rabbitmq节点相关信息,无法对策略管理
#management,普通管理者角色,仅可以登录控制台,无法看到节点信息
rabbitmqctl set_user_tags admin administrator
一、RabbitMQ主要使用场景:
程序解耦利器;
流量消峰;
异步处理;
二、RabbitMQ核心概念:
VirtualHost
Connection
Exchange
Channel
Queue
Binding
三、RabbitMQ 工作中最常用的工作模式:
Simple模式,最简单常用的模式,一个生产者只有一个消费者
Work,工作模式,启动多个消费者,适用于生产消息的速度远大于消费消息速度时,可起到负载均衡的作用,一个消息只能被一个消费者获取。消费者越多消息处理越快,但也要考虑mysql读写瓶颈
Publish/Subscribe,订阅模式,消息被路由投递给多个队列,一个消息被多个消费者获取。
Routing,路由模式,一个消息被多个消费者获取。并且消息的目标队列可被生产者指定。
Topic,话题模式,一个消息被多个消费者获取。消息的目标queue可用BindingKey 以通配符, (#:一个或多个词,*:一个词)的方式指定。