【发布时间】:2016-02-06 09:45:05
【问题描述】:
我正在使用 Bunny (Ruby) 发布 RabbitMQ 消息,如下所示:
x.publish("Message !"+n.to_s, :routing_key => 'mychannel')
并像这样订阅:
ch = conn.create_channel
x = ch.topic('fling',durable: true)
q = ch.queue("")
q.bind(x, :routing_key => 'mychannel')
puts "Waiting for messages."
q.subscribe( :block => true) do |delivery_info, properties, body|
puts " [x] Received #{body}, message properties are #{properties.inspect}"
一旦我启动订阅者,它会立即接收任何发送的消息。但是,如果我在未启动订阅者的情况下发送消息,则在我启动订阅者时不会收到消息(无论发送者是否仍在推送消息)。
是否可以通过队列返回并接收过去在没有订阅者监听时发送的消息?
【问题讨论】:
标签: rabbitmq rabbitmq-exchange bunny