一,基本概念
- 生产者:发布消息
- 消费者:消费消息
- 消息:传输的数据+标签
- 信道:应用程序与rabbit连接时会创建一条TCP连接,然后通过信道传输消息,信道是建立在TCP连接内的虚拟连接
- 队列:存放消息
- 交换器:根据规则把消息投递到相应的队列
- 虚拟主机:mini版的RabbitMQ服务器
二,基本使用
- 交换器选择:
- direct:只发送给路由键完全匹配的队列
- fanout:发送给每一个绑定的队列
- topic:按模式匹配消息的路由键然后发送给相应的队列
- 持久化:
- 消息,队列,交换器持久化
- 性能严重降低:磁盘写入原因
- 发送方确认模式:当消息发送给所匹配的队列后,信道发送一个发送方确认模式给生产者应用程序,生产者应用程序的回调方法将会被触发来处理该确认消息
- 事务
三,Rabbit管理
- rabbitmqctl
- 权限:配置,写,读:*.*.*
- RabbitMQ使用Mnesia存储队列,交换器,绑定等信息,运行RabbitMQ的用户需要有对Mnesia的数据目录有读写权限