Analista Judiciário - Área Apoio Especializado - Especialidade: Análise de Sistemas de Informação
Em um ambiente de microsserviços, é muito comum utilizar o RabbitMQ como plataforma de mensageria. Trata-se de um produto de fácil configuração para execução em contêineres.Sobre o RabbitMQ, é correto afirmar que:
Apor ter sido criado na linguagem Erlang, exige a utilização de consumidores implementados na mesma linguagem;
Bpermite trabalhar apenas com AMQP 0.9.1, inviabilizando qualquer forma de utilização do STOMP ou MQTT;
Cembora gerencie internamente os privilégios dos usuários, permite o uso de LDAP para autenticação;
Dtrabalha apenas com filas duráveis, o que garante que todas as mensagens se recuperem de eventuais quedas do servidor;
Eoferece diversos tipos de exchange, como topic exchange, que direciona a mensagem de forma automática para todas as filas associadas, no modelo broadcast.
Revelar gabarito e comentário▾
GabaritoC — embora gerencie internamente os privilégios dos usuários, permite o uso de LDAP para autenticação;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
RabbitMQ
Gabarito: letra C. Embora o RabbitMQ possua seu próprio sistema de autenticação e autorização, ele permite integração com LDAP para autenticação externa. As demais alternativas contêm imprecisões sobre protocolos, tipos de exchange, persistência e linguagens de consumidores.
Alternativa A — ❌ Incorreta
Afirma que consumidores devem ser implementados em Erlang por o RabbitMQ ser criado nessa linguagem. Na verdade, o RabbitMQ suporta diversos protocolos (AMQP, STOMP, MQTT) e clientes em várias linguagens (Java, Python, JavaScript, etc.). A linguagem de implementação do servidor não impõe restrição aos consumidores.
Alternativa B — ❌ Incorreta
Diz que o RabbitMQ trabalha apenas com AMQP 0.9.1 e inviabiliza STOMP e MQTT. Na realidade, o RabbitMQ suporta múltiplos protocolos, incluindo AMQP 0-9-1, AMQP 1.0, STOMP, MQTT e até HTTP via plugin. Portanto, a afirmação é falsa.
Alternativa C — ✅ Correta ⟵ GABARITO
O RabbitMQ gerencia internamente usuários e permissões, mas oferece suporte a LDAP como backend de autenticação. Isso permite integrar com diretórios corporativos sem duplicar contas. A afirmação está correta.
Alternativa D — ❌ Incorreta
Afirma que o RabbitMQ trabalha apenas com filas duráveis. Na verdade, filas podem ser configuradas como duráveis (persistem mensagens em disco) ou não-duráveis (transitórias, perdidas em reinicializações). Mensagens em filas não-duráveis são perdidas com queda do servidor, logo a recuperação total não é garantida.
Alternativa E — ❌ Incorreta
Descreve o topic exchange como broadcast (envio a todas as filas). O comportamento de broadcast é do fanout exchange. O topic exchange utiliza routing keys com padrões (ex.: *.critical) para direcionar mensagens apenas às filas cujo padrão corresponda. Há troca do conceito de exchange.
NÃO CAIA NESSA!
A alternativa E confunde o topic exchange com o fanout exchange. O fanout envia a mensagem para todas as filas vinculadas (broadcast); o topic filtra por padrão de routing key. Essa troca é clássica em provas.
PEGA ESSA DICA!
Memorize os quatro tipos de exchange do RabbitMQ: direct (routing key exata), fanout (broadcast), topic (routing key com wildcards) e headers (baseado em atributos). Saber a diferença entre eles é essencial para questões de mensageria.