Questão de Engenharia de Software — Software livre — CESPE / CEBRASPE 2023
Engenharia de Software›Software livre
Código
ce151508
Banca
CESPE / CEBRASPE
Órgão
AGER - Mato Grosso
Ano
2023
Nível
Superior
Cargo
Analista Regulador - Ciências da Computação e ou Sistemas de Informação
Assinale a opção que apresenta exemplos de serviços de mensageria em que há agentes que publicam, conhecidos como publishers, e agentes que leem, conhecidos como consumers.
ARabbitMQ e Kafka.
BXML-HTTP Request.
CZooKeeper e WSDL.
DSOAP e Ionic.
EData lake e Spark.
Revelar gabarito e comentário▾
GabaritoA — RabbitMQ e Kafka.
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”.
Mensageria: RabbitMQ e Kafka
Gabarito: letra A. RabbitMQ e Kafka são exemplos clássicos de sistemas de mensageria (message brokers) que implementam o modelo publish/subscribe, com agentes que publicam mensagens (publishers) e agentes que as consomem (consumers). As demais alternativas misturam tecnologias de outras áreas, como serviços web, big data e frameworks mobile.
A banca testa o conhecimento específico sobre ferramentas de mensageria, um tema recorrente em arquitetura de software e sistemas distribuídos. Conforme o material de apoio, RabbitMQ e Apache Kafka são citados como exemplos de message brokers populares (RabbitMQ, Apache Kafka, IBM MQ, Amazon SQS). Ambos permitem comunicação assíncrona entre produtores e consumidores.
Critério
RabbitMQ
Apache Kafka
Tipo de sistema
Message broker (fila/tópico)
Plataforma de streaming distribuída
Modelo de comunicação
Publish/Subscribe (AMQP)
Publish/Subscribe (log particionado)
Armazenamento de mensagens
Filas (removidas após consumo)
Log persistente (retenção configurável)
Ordenação de mensagens
Garantida por fila
Garantida por partição
Roteamento
Trocas (exchanges) com bindings
Tópicos com partições
Casos de uso típicos
Microsserviços, filas de tarefas
Event sourcing, streaming de dados em tempo real
Alternativa A — ✅ Correta ⟵ GABARITO
RabbitMQ e Apache Kafka são sistemas de mensageria amplamente utilizados. RabbitMQ implementa o protocolo AMQP e atua como intermediário entre produtores e consumidores. Kafka é uma plataforma distribuída de streaming baseada em log particionado, onde tópicos são divididos em partições e consumidores assinam tópicos para ler eventos. Ambos se encaixam perfeitamente na descrição de serviços com publishers e consumers.
Alternativa B — ❌ Incorreta
XML-HTTP Request não é um serviço de mensageria. Trata-se de um formato de requisição HTTP que pode usar XML, mas não é um sistema intermediário de mensagens com filas ou tópicos. Não há conceito de publisher e consumer nesse contexto.
Alternativa C — ❌ Incorreta
ZooKeeper é um serviço de coordenação distribuída (gerenciamento de configuração, sincronização), não um message broker. WSDL (Web Services Description Language) é uma linguagem para descrever serviços web, não um sistema de mensageria.
Alternativa D — ❌ Incorreta
SOAP é um protocolo de serviços web baseado em XML, e Ionic é um framework para desenvolvimento de aplicativos móveis híbridos. Nenhum deles é um serviço de mensageria com publishers e consumers.
Alternativa E — ❌ Incorreta
Data lake e Apache Spark são tecnologias de armazenamento e processamento de grandes volumes de dados (big data). Embora possam se integrar com sistemas de mensageria, não são eles próprios exemplos de serviços de mensageria.
NÃO CAIA NESSA!
A banca mistura conceitos de áreas diferentes (serviços web, big data, frameworks mobile) para confundir o candidato. O segredo é lembrar que mensageria envolve troca assíncrona de mensagens entre sistemas, com um intermediário (broker) gerenciando filas ou tópicos.
PEGA ESSA DICA!
Memorize os principais message brokers: RabbitMQ, Apache Kafka, IBM MQ, Amazon SQS. Além disso, entenda que um publisher envia mensagens para o broker e um consumer as recebe, normalmente de forma assíncrona.