RabbitMQ是否创建队列/交换(如果已经存在)?

时间:2019-06-08 18:40:42

标签: rabbitmq

RabbitMQ是否创建队列/交换(如果已经存在)?

我应该在创建队列之前检查并交换它们是否已经存在吗?

1 个答案:

答案 0 :(得分:1)

RabbitMQ服务器本身不会创建交换或队列。您必须使用Web管理员GUI,command line tool,或在客户端打开的连接上创建交换和队列。最后一种选择是一种根据客户动态创建交换,队列和绑定的好方法。

重要的是要注意,交换或队列一旦创建,就不能使用不同属性再次创建。例如,如果您的客户创建了扇出交换,则不能再创建与直接交换相同的交换。使用与首次创建时相同的类型和属性来重新创建它是安全的。这只是不执行任何操作,并且将使其保持不变。但是尝试使用其他类型或属性创建它会导致错误。

对于队列也是如此。再次使用相同的属性创建它很好,使用不同的属性会导致错误。

如果可以确保始终以相同的方式创建交换或队列,则不必检查交换或队列是否存在。

相关问题