Questão de Arquitetura de Software — Arquitetura de Software — FUNDEP (Gestão de Concursos) 2024
Arquitetura de Software›Arquitetura de Software
Código
qg185131
Banca
FUNDEP (Gestão de Concursos)
Órgão
Câmara de Betim - MG
Ano
2024
Nível
Superior
Cargo
Consultor Técnico Legislativo - Analista de Desenvolvimento de Tecnologia
Considere um sistema de e-commerce que precisa processar os pedidos dos clientes e notificar tanto os clientes quanto os administradores sobre o status dos pedidos. O sistema é projetado para ser altamente escalável e resiliente.Os pedidos são recebidos por meio de uma interface web e enviados para um serviço intermediário, que irá controlar o processamento dos pedidos. De forma assíncrona, esse intermediário irá encaminhar os pedidos para o servidor para que sejam processados um a um. Uma notificação é enviada aos clientes por e-mail após finalização de cada pedido.Assinale a alternativa que apresenta o modelo arquitetural adequado para esse sistema.
AMicrosserviços.
BFila de Mensagens
CCliente-Servidor
DArquitetura MVC
Revelar gabarito e comentário▾
GabaritoB — Fila de Mensagens
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”.
Análise do modelo arquitetural
Gabarito: letra B – Fila de Mensagens. O sistema descrito utiliza um serviço intermediário para processamento assíncrono, característica central de filas de mensagens, que garantem escalabilidade e resiliência. O enunciado enfatiza que os pedidos são recebidos e, de forma assíncrona, encaminhados um a um para um servidor, com notificação posterior — exatamente o padrão de uma fila de mensagens (broker).
Alternativa
Modelo Arquitetural
Característica Central
Adequação ao Sistema (processamento assíncrono, fila, notificação)
A
Microsserviços
Decomposição em serviços independentes
❌ Incorreta (foco não é na divisão em serviços, mas no mecanismo de integração)
B
Fila de Mensagens
Componente intermediário (broker) para envio assíncrono
✅ Correta (descreve exatamente o padrão: pedidos em fila, processamento um a um, notificação posterior)
C
Cliente-Servidor
Modelo síncrono (requisição-resposta)
❌ Incorreta (processamento é assíncrono, não bloqueante)
D
Arquitetura MVC
Padrão de organização de interface de usuário
❌ Incorreta (não se aplica ao fluxo de backend descrito)
Alternativa A — ❌ Incorreta
Microsserviços é um estilo que decompõe a aplicação em serviços independentes. Embora possa usar filas para comunicação assíncrona, a descrição não menciona múltiplos serviços autônomos; há apenas um "serviço intermediário" e um "servidor" processando sequencialmente. O foco do enunciado é no mecanismo de integração assíncrona (a fila), não na divisão em microsserviços.
Alternativa B — ✅ Correta ⟵ GABARITO
Fila de Mensagens é um padrão arquitetural onde um componente intermediário (broker) gerencia o envio assíncrono de mensagens entre produtores e consumidores. No caso, a interface web produz mensagens de pedido; o serviço intermediário as coloca em uma fila; e o servidor as consome de forma ordenada ("um a um"). Isso desacopla temporalmente os componentes, torna o sistema mais resiliente a picos de carga e a falhas do servidor, e permite notificações assíncronas após o processamento.
Alternativa C — ❌ Incorreta
Cliente-Servidor é um modelo síncrono: o cliente faz uma requisição e bloqueia até receber a resposta. No sistema descrito, o processamento é assíncrono (o intermediário encaminha os pedidos sem bloquear a interface web). Além disso, cliente-servidor não oferece fila de espera nem resiliência contra falhas do servidor sem mecanismos adicionais.
Alternativa D — ❌ Incorreta
MVC (Model-View-Controller) é um padrão de organização de interface de usuário, que separa a lógica de apresentação (View), a lógica de controle (Controller) e os dados (Model). Não se aplica ao fluxo de processamento de pedidos entre componentes de backend. O enunciado foca na comunicação assíncrona entre sistemas, não na estrutura interna de uma aplicação web.
NÃO CAIA NESSA!
A banca explora a confusão entre "usar filas" e "adotar microsserviços". Embora ambos possam coexistir, a questão descreve explicitamente um intermediário que controla o processamento assíncrono — essência de uma fila de mensagens. Microsserviços envolveria múltiplos serviços com seus próprios bancos de dados e comunicação via API, não necessariamente com uma fila central. Fique atento: quando o texto fala em "serviço intermediário" e "encaminhamento assíncrono", pense em fila de mensagens.