One possible approach would be to set the 'mandatory' flag when sending the message. This should cause the broker to send back the message with a "NO ROUTE" error. Not sure exactly how well this is supported (or if it would even work).
Option 1 isn't guaranteed to work since different servers can use the same exchange. Another server may have already created it for its own queue.
Not sure exactly if option 2 is possible with the kombu library, and even if it was there'd be no guarantee that the queue won't be deleted before the client sends the message.
Option 3 will lead to stale RPC requests building up in rabbit's queues.
One possible approach would be to set the 'mandatory' flag when sending the message. This should cause the broker to send back the message with a "NO ROUTE" error. Not sure exactly how well this is supported (or if it would even work).
Option 1 isn't guaranteed to work since different servers can use the same exchange. Another server may have already created it for its own queue.
Not sure exactly if option 2 is possible with the kombu library, and even if it was there'd be no guarantee that the queue won't be deleted before the client sends the message.
Option 3 will lead to stale RPC requests building up in rabbit's queues.