rabbitMQ学习-相关概念(4)

239 阅读1分钟

生产者

生产者创建消息,消息分为标签label和消息体(也叫负载体,payload)。label中放着交换机、路由键routeKEY,payload中放着业务数据,比如json本文,或者序列化数据.

消费者

消费者消费消息。

队列

rabbitmq内部对象(queue),用户存储消息。

交换机

主要用于路由消息exchange,交换机根据routeKey路由消息到队列中。

绑定键

bindingKey, 用于交换机和队列关联起来。

路由键

发送消息会指定交换机和路由键,用来指定消息的路由规则。需要和绑定键联合起来使用。

交换机的类型

类型 备注
fanout 发送消息到与该交换机绑定的队列
direct 发送消息到路由键与绑定键完全匹配的队列
topic 发送消息到路由键与绑定键匹配的队列。匹配规则:路由键由.分割的字符串,绑定键可以存在两种特殊字符,‘*’用于匹配一个单词,‘#’用于匹配多个单次(可以0个)
header 不依赖路由键来路由消息,根据发送消息中的headers属性来匹配。在绑定交换机和队列时指定一组键值对。在发送消息时,rabbitmq获取消息中与绑定的键值对匹配。此性能很差,不实用。