Boa.
So queria mencionar o Kafka como uma terceira opção — especialmente via Confluent Platform — pra quem está lidando com volumes realmente absurdos onde RabbitMQ e Service Bus já começam a suar frio.
Um ponto que acho interessante é o Kafka Connect com JDBC Sink Connector: em vez de escrever um consumer do zero, você configura o batch size e ele cuida do gargalo de escrita. Não é mágica, mas reduz bastante o código que você precisa manter.
O ksqlDB também entra bem no jogo da leitura eficiente — dá pra criar materialized views sobre os streams e tirar um pouco da pressão do banco transacional. E pra quem já sofreu com incompatibilidade de contrato entre producer e consumer, o Schema Registry com Avro ou Protobuf resolve isso de forma bem elegante, bem melhor do que torcer pro JSON continuar funcionando depois de um refactor.
Claro que é uma stack bem mais pesada, se for pelo confluent não e barato e não faz sentido pra todo projeto. Mas pra volumes extremos, vale conhecer.