I have a Ruby app that acts as producer, something like this:
class PostNotificationService
  class << self
    def call(notification)
      queue = channel.queue('adyen_notifications', auto_delete: false)
      exchanger = channel.default_exchange
      exchanger.publish(notification, routing_key: queue.name)
    end
    private
    def connection
      @connection ||= Bunny.new(AMQP_URL)
      @connection.start
      @connection
    end
    def channel
      @channel ||= connection.create_channel
      @channel.basic_qos 1
      @channel
    end
  end
end
and I also have a consumer app that spawns 2 workers (consumer)
AMQP_URL = ENV['RABBITMQ_URL'] || 'amqp://guest:guest@localhost:5672'
Sneakers.configure  heartbeat: 2,
                    amqp: AMQP_URL,
                    vhost: '/',
                    workers: 2,
                    exchange_type: :direct,
                    timeout_job_after: 1.minute,
                    prefetch: 1
it works quite fine, but I get the same message two times (on both consumers). I thought that by default rabbitmq would send the message to the consumers using round robin fashion but even with the prefetch option I'm getting 2 messages.
Did I missed something?