Reply timeout when using AsyncRabbitTemplate::sendAndReceive - RabbitMQ

Solution 1:

asyncRabbitTemplate.sendAndReceive(..) will always expect a response from the consumer of the message, hence the timeout you are receiving.

To fire and forget use the standard RabbitTemplate.send(...) and catching any exceptions in a try/catch block:

try {
        rabbitTemplate.send("1.1.1.csv-routing-key",
        new Message(
            "a,test,csv".getBytes(StandardCharsets.UTF_8),
            props.build());
    } catch (AmqpException ex) {
        log.error("failed to send rabbit message, routing key = {}", routingKey, ex);
    }