Apache Kafka e RabbitMQ são duas tecnologias importantes no contexto de desenvolvimento de aplicações modernas quando se trata de pipeline de dados de streaming e mensageria. A respeito dessas ferramentas, julgue as seguintes afirmativas: I. O Kafka emprega um modelo de log particionado, o qual reúne abordagens de fila de mensagens e assinatura de publicação. II. O RabbitMQ utiliza um protocolo binário via TCP. III. O Kafka não permite que variados consumidores recebam a mesma mensagem, uma vez que são excluídas após consumo. Está correto o que se afirma em
- A)I, apenas.
Errada, porque a afirmativa I é verdadeira e não pode ser a única correta.
- B)II, apenas.
Errada, porque a afirmativa II é verdadeira, mas não é a única correta.
- C)I e II, apenas.
Certa, pois as afirmativas I e II estão corretas e a III está errada.
- D)II e III, apenas.
Errada, porque a III está incorreta ao dizer que o Kafka exclui a mensagem após o consumo.
- E)I, II e III.
Errada, porque a III é falsa e não podem estar corretas as três afirmativas.
Gabarito: C
Kafka e RabbitMQ caem muito em prova porque os dois trabalham com mensageria, mas cada um tem uma personalidade. O Kafka foi desenhado para streaming e processamento de eventos em alto volume, usando um modelo de log particionado. Isso faz com que ele una características de fila e de publicação/assinatura, permitindo que vários consumidores leiam o mesmo dado em contextos diferentes, especialmente por meio de consumer groups. O RabbitMQ, por sua vez, é um broker de mensagens mais clássico, muito associado ao protocolo AMQP, que é binário e trafega sobre TCP. Ele é bastante usado quando a ideia é orquestrar filas, roteamento e entrega confiável entre aplicações. Por isso, a afirmativa I está correta: o Kafka realmente trabalha com log particionado e combina ideias de fila e pub/sub. A II também está correta, porque o RabbitMQ usa um protocolo binário sobre TCP, com AMQP sendo a referência mais cobrada. Já a III está errada: no Kafka a mensagem não some depois que um consumidor lê, pois ela fica no log por retenção configurada, permitindo que outros consumidores, inclusive de grupos diferentes, também a acessem. Assim, o gabarito C está certo porque apenas I e II são verdadeiras.