RabbitMQ消息分发简单介绍
通过前面介绍过activemq的文章的时候我们了解到activemq有queue和topic的具体实现,但是在rabbitmq中只有queue的具体实现,是没有具体topic这种说法的,但是虽然没有提供topic的概念,但是却通过交换器exchange、路由routingkey等进行了交换实现,下面我们就来介绍下在rabbitmq中生产者是如何把消息发送到队列中的。 在介绍消息传递之前我们还得介绍下下面的几个概念: vhost:在前面的一篇文章 《RabbitMQ的配置文件说明》 中提到过一个关于vhost的默认配置为default_vhost = /,它代表一个mini的rabbitmq虚拟主机,除了与其他rabbitmq虚拟主机共享相同的身份认证和加密环境外,它拥有自己独立的queue,exchange,routingkey,binding及权限机制,它可以通过命令行rabbitmqctl add_vhost qa1和在管理界面添加 channel:通道,是由connection创建的,而connection又是通过ConnectionFactory创建的,在channel中我们可以定义queue、exchange、queuebind、消息发布、消息消费等操作。 routingkey:路由key,用来路由消息到queue