Questões de Concurso Sobre sistemas distribuídos em arquitetura de software

Questões Discursivas

Foram encontradas 212 questões

Q4218968 Arquitetura de Software
Uma equipe de Site Reliability Engineering (SER) observou que uma métrica foi modelada da seguinte forma em uma ferramenta de monitoramento baseada em séries temporais:

login_attempts_total{user_id="983421", session_id="ab7d91f2", request_id="rq-88931"}

Após algumas semanas, houve crescimento abrupto do consumo de memória e degradação no desempenho das consultas no sistema de monitoramento.
Nesse cenário, assinale a opção que indica a interpretação mais adequada. 
Alternativas
Q4218257 Arquitetura de Software
Considere os logs coletados durante o processamento de requisições em um sistema distribuído de e-commerce.  

Imagem associada para resolução da questão

Durante a análise de um incidente, a equipe conseguiu reconstruir o fluxo completo da requisição entre os diferentes serviços envolvidos, identificando o ponto exato de falha e as tentativas de recuperação.
Nesse cenário, assinale a opção que identifica corretamente a prática de estruturação de logs que foi determinante para viabilizar essa análise. 
Alternativas
Q4218117 Arquitetura de Software
Em um ambiente de microsserviços, uma aplicação expõe a métrica:

http_requests_total{job="api", instance="10.0.0.5:8080", method="GET", code="500"}

A equipe deseja calcular, no Prometheus, a taxa média por segundo de crescimento dessa métrica ao longo dos últimos 5 minutos, suavizada ao longo da janela de tempo completa, para alimentar um painel de erro no Grafana.
Assinale a opção que apresenta a expressão em PromQL conceitualmente mais adequada para esse objetivo.
Alternativas
Q4217507 Arquitetura de Software
Uma sociedade empresária de desenvolvimento de aplicações web realizou a migração de seus servidores, antes hospedados em data center próprio, para um serviço em nuvem.
Nessa nova abordagem, os desenvolvedores passaram apenas a submeter código, que é executado automaticamente em resposta a eventos, como requisições de usuários ou alterações em banco de dados. Além disso, o custo do serviço passou a variar conforme a utilização.
Com base no cenário apresentado, assinale a opção que indica o modelo de serviço em nuvem utilizado pela sociedade empresária. 
Alternativas
Q4217498 Arquitetura de Software
Considere os seguintes logs coletados durante o processamento de requisições em um sistema distribuído de e-commerce

Imagem associada para resolução da questão

Durante a análise de um incidente, a equipe conseguiu reconstruir o fluxo completo da requisição entre os diferentes serviços envolvidos, identificando o ponto exato de falha e as tentativas de recuperação.
Nesse cenário, assinale a opção que identifica corretamente a prática de estruturação de logs que foi determinante para viabilizar essa análise. 
Alternativas
Q4216335 Arquitetura de Software
Comunicação assíncrona é um modelo de interação entre sistemas, em que o emissor envia uma mensagem sem precisar aguardar uma resposta imediata do receptor para continuar sua execução. O receptor processa a mensagem quando estiver disponível e, por vezes, há um intermediário. Em outras palavras, o envio e o processamento da mensagem ocorrem em momentos independentes. Tal abordagem é comumente aplicada em cenários de mensageria, tais como notificações, filas e event streamings.

As tecnologias que se associam as aplicações mencionadas são, respectivamente, 
Alternativas
Q4216316 Arquitetura de Software
A orquestração de contêineres permite automatizar a implantação, o escalonamento e o gerenciamento de aplicações distribuídas.

Nesse contexto, ferramentas surgiram para administrar clusters de nós computacionais e garantir alta disponibilidade e eficiência operacional.

Diante do exposto, analise as afirmativas a seguir. 

I. O Kubernetes é uma plataforma de orquestração de contêineres que permite automatizar a implantação, o escalonamento e a gestão de aplicações em clusters de nós computacionais.
II. O Rancher é uma ferramenta nativa do Kubernetes utilizada para o gerenciamento de clusters.
III. Em um cluster Kubernetes, os nós de trabalho executam os pods, enquanto o plano de controle é responsável pelo gerenciamento do estado do cluster.

Está correto o que se afirma em 
Alternativas
Q4216246 Arquitetura de Software

A avaliação de desempenho em sistemas back-end distribuídos exige a identificação precisa de gargalos que limitam escalabilidade e tempo de resposta. Em ambientes de alta concorrência, problemas de desempenho podem estar relacionados a CPU, memória, acesso a banco de dados, comunicação em rede ou sincronização entre componentes, sendo fundamental analisar o comportamento do sistema de forma sistêmica e baseada em evidências.


Considere uma aplicação back-end que passou por escalabilidade horizontal, com aumento do número de instâncias, mas continua apresentando alto tempo de resposta sob carga intensa. Monitoramentos indicam que o consumo de CPU e memória das instâncias estão baixos, enquanto o tempo médio de resposta das requisições permanece elevado.


Nesse contexto, assinale a alternativa que descreve corretamente a hipótese técnica mais plausível para explicar o problema observado e orientar a investigação do gargalo.

Alternativas
Q4216243 Arquitetura de Software

Em sistemas distribuídos e baseados em microsserviços, falhas parciais são esperadas e inevitáveis. Dependências externas podem tornar-se lentas ou indisponíveis, propagando falhas em cascata e degradando a experiência do usuário.


Para mitigar esse risco, padrões de resiliência são adotados com o objetivo de isolar falhas, proteger recursos e permitir recuperação controlada do sistema.


Considere uma API back-end que depende de um serviço externo de pagamento. Em situações de instabilidade desse serviço, a API começa a apresentar lentidão generalizada e falhas sucessivas, afetando usuários que não dependem diretamente da funcionalidade de pagamento.


Nesse contexto, assinale a alternativa que descreve corretamente a aplicação do padrão Circuit Breaker para aumentar a resiliência do sistema.

Alternativas
Q4216242 Arquitetura de Software
Em sistemas back-end de alta demanda, mecanismos de cache são amplamente utilizados para reduzir latência e carga sobre bancos de dados. Soluções como Redis permitem armazenar dados temporários em memória, melhorando o tempo de resposta. Entretanto, o uso de cache introduz desafios relacionados à consistência dos dados, exigindo estratégias adequadas para evitar respostas desatualizadas ou inconsistentes em aplicações distribuídas.
Considere uma API back-end que utiliza um banco de dados relacional como fonte primária de dados e um cache em memória (Redis) para acelerar consultas frequentes. Os dados podem ser atualizados por múltiplas operações concorrentes, e a aplicação deve equilibrar desempenho e consistência.
Nesse contexto, assinale a alternativa que descreve corretamente uma estratégia adequada de uso de cache para reduzir inconsistências sem comprometer significativamente o desempenho da aplicação.
Alternativas
Q4216239 Arquitetura de Software
Sistemas back-end que atendem grande volume de usuários precisam ser projetados para crescer de forma sustentável. A escalabilidade é um requisito arquitetural central e pode ser alcançada por diferentes estratégias, sendo as mais comuns a escalabilidade vertical e a escalabilidade horizontal. A escolha entre essas abordagens impacta diretamente no custo, resiliência, disponibilidade e complexidade operacional do sistema.
Considere uma API corporativa que apresenta picos imprevisíveis de acesso e precisa manter alta disponibilidade mesmo em caso de falha de servidores individuais, além de permitir crescimento gradual da capacidade conforme a demanda.
Nesse contexto, assinale a alternativa que descreve corretamente a estratégia de escalabilidade mais adequada para atender a esses requisitos e a justificativa técnica associada.
Alternativas
Q4216238 Arquitetura de Software

À medida que sistemas back-end evoluem para arquiteturas distribuídas e baseadas em microsserviços, torna-se inviável compreender o comportamento do sistema apenas por meio de testes locais ou depuração tradicional. Nesse contexto, práticas de observabilidade permitemanalisar o estado interno do sistema a partir de seus artefatos externos, possibilitando identificação de falhas, gargalos de desempenho e comportamentos anômalos em ambientes de produção.


Considere uma aplicação composta por diversos microsserviços que se comunicam entre si para atender requisições de usuários. Em produção, a equipe precisa identificar rapidamente a causa raiz de falhas intermitentes e degradações de desempenho que ocorrem apenas sob carga real, sem interromper o serviço.


Nesse cenário, assinale a alternativa que descreve corretamente a combinação de práticas de observabilidade mais adequada para atender a esse objetivo em sistemas distribuídos.

Alternativas
Q4216235 Arquitetura de Software

Sistemas distribuídos modernos frequentemente combinam diferentes modelos de comunicação para atender requisitos de desempenho, escalabilidade e resiliência. A comunicação síncrona, como chamadas diretas via HTTP, oferece simplicidade e resposta imediata, enquanto a comunicação assíncrona, baseada em eventos ou mensageria, reduz acoplamento temporal e aumenta tolerância a falhas, sendo especialmente relevante em arquiteturas de microsserviços.


Considere uma arquitetura de microsserviços em que um serviço de Processamento de Pedidos precisa acionar, de forma confiável, serviços de Faturamento e Notificação. O sistema deve continuar aceitando pedidos mesmo quando um desses serviços estiver temporariamente indisponível, sem bloquear o fluxo principal da aplicação.


Nesse contexto, assinale a alternativa que descreve corretamente a estratégia arquitetural mais adequada para atender a esses requisitos, considerando comunicação entre serviços.

Alternativas
Q4216234 Arquitetura de Software

Em arquiteturas baseadas em microsserviços, a execução de aplicações em contêineres exige mecanismos robustos para gerenciamento de implantação, escalabilidade, tolerância a falhas e atualização contínua. O Kubernetes consolidou-se como uma plataforma de orquestração que abstrai a infraestrutura subjacente e automatiza tarefas operacionais, permitindo que aplicações back-end escalem de forma controlada e resiliente.


Considere uma aplicação back-end executada em contêineres Docker, implantada em um cluster Kubernetes. A aplicação apresenta variação significativa de carga ao longo do dia e precisa manter disponibilidade mesmo diante de falhas em nós do cluster, sem intervenção manual da equipe de operações.


Nesse contexto, assinale a alternativa que descreve corretamente um recurso do Kubernetes que atende simultaneamente aos requisitos de escalabilidade e alta disponibilidade da aplicação.

Alternativas
Q4216233 Arquitetura de Software
Em arquiteturas de microsserviços, a autonomia dos serviços favorece escalabilidade e evolução independente, mas impõe desafios relevantes na gestão de dados. A adoção do princípio “banco de dados por serviço” reduz acoplamento, porém dificulta transações distribuídas tradicionais, exigindo estratégias arquiteturais para manter consistência e confiabilidade em operações que atravessam múltiplos serviços. Uma abordagem recorrente é o padrão Saga, que coordena transações locais e compensações, evitando bloqueios globais típicos de transações ACID distribuídas.
Considere um sistema de marketplace implementado em microsserviços, com os seguintes serviços: Pedido, Pagamento e Estoque, cada um com seu próprio banco de dados. Ao confirmar uma compra, o fluxo exige: (1) criar o pedido, (2) reservar o estoque e (3) confirmar o pagamento. Em caso de falha em qualquer etapa, o sistema deve retornar a um estado consistente, sem depender de uma transação distribuída única com bloqueio entre bancos.
Assinale a alternativa que descreve corretamente a estratégia arquitetural mais adequada, nesse cenário, para garantir consistência de dados sem uso de transações distribuídas ACID, reduzindo risco de bloqueios e aumentando resiliência.
Alternativas
Q4215954 Arquitetura de Software

Uma organização implementou um sistema distribuído no qual a execução de uma operação de negócio complexa depende da coordenação centralizada de múltiplos microsserviços, com um componente dedicado responsável por invocar cada serviço na sequência correta, tratar falhas parciais e garantir a consistência do fluxo transacional. Nesse modelo de coordenação, o padrão adotado é:

Alternativas
Q4215949 Arquitetura de Software
Uma organização multinacional implementou uma arquitetura em nuvem com o objetivo de garantir continuidade operacional mesmo diante da falha completa de um data center. Para isso, replicou cargas de trabalho críticas em locais fisicamente separados dentro de uma mesma área geográfica administrada pelo provedor, mantendo baixa latência entre os ambientes e utilizando um único escopo de faturamento e políticas centralizadas de governança. Nesse contexto, os locais de implantação utilizados correspondem a:
Alternativas
Q4209731 Arquitetura de Software
A Prefeitura Municipal de Vitória implantou uma nova infraestrutura para hospedar sistemas institucionais de arrecadação tributária, protocolo eletrônico e atendimento ao cidadão. Para aumentar a disponibilidade dos serviços digitais, a equipe de infraestrutura decidiu utilizar Docker Swarm na orquestração dos contêineres backend e frontend da aplicação. Durante um período de alta demanda causado pela emissão simultânea de carnês de IPTU, um dos nós responsáveis pela execução de serviços críticos apresentou falha de hardware. Mesmo após a indisponibilidade do nó, os serviços continuaram acessíveis aos cidadãos sem interrupção perceptível. Ao analisar o comportamento do ambiente, o administrador verificou que o cluster Docker Swarm havia redistribuído automaticamente as tarefas dos serviços afetados para outros nós disponíveis do cluster. Considerando o funcionamento do Docker Swarm nesse cenário, assinale a afirmativa correta. 
Alternativas
Q4209721 Arquitetura de Software
Um conglomerado bancário internacional pretende modernizar sua plataforma central de processamento de pagamentos, atualmente estruturada em uma arquitetura monolítica legada, executando em ambiente mainframe, caracterizada por alto acoplamento e baixa coesão. A diretoria de tecnologia definiu que a nova solução deverá adotar uma arquitetura de microsserviços, permitindo escalabilidade independente e implantação autônoma de módulos de negócio, como liquidação, câmbio e transferências. Considerando as características das arquiteturas contemporâneas e as estratégias de integração entre sistemas legados e modernos, analise as afirmativas a seguir.

I. A transição do monólito para microsserviços reduz a complexidade operacional da infraestrutura, uma vez que os serviços passam a compartilhar um único banco de dados centralizado, reduzindo a necessidade de coordenação distribuída.
II. O padrão Strangler Fig (Padrão Estrangulador) representa uma estratégia recomendada para migração gradual, na qual funcionalidades do sistema legado são substituídas incrementalmente por novos serviços até a possível desativação do sistema original.
III. Em arquiteturas de microsserviços, ganhos relacionados à escalabilidade e autonomia de desenvolvimento podem ser acompanhados por desafios associados à consistência eventual de dados, observabilidade e monitoramento de transações distribuídas.

Está correto o que se afirma apenas em 
Alternativas
Q4209720 Arquitetura de Software
Uma plataforma de comércio eletrônico baseada em microsserviços identificou degradação de desempenho em clientes mobile e aumento de falhas em operações de pedido. A análise técnica apontou que o aplicativo móvel realiza múltiplas chamadas REST para obtenção de dados de catálogo, preço, estoque e recomendações, recebendo frequentemente informações desnecessárias para as telas exibidas. Também foi constatado que o fechamento de pedidos depende de uma cadeia síncrona entre os serviços de pedido, pagamento, estoque e notificação, de modo que a indisponibilidade temporária do serviço de notificação impacta a conclusão da operação. A equipe de arquitetura decidiu revisar a integração entre backend, frontend e serviços distribuídos, buscando reduzir o volume de dados trafegados para o cliente mobile, diminuir o acoplamento temporal entre serviços e preservar a consistência do processo de negócio em operações distribuídas. De acordo com o exposto, assinale a alternativa cuja solução está correta em relação aos requisitos arquiteturais apresentados.
Alternativas
Respostas
1: D
2: C
3: B
4: E
5: E
6: D
7: C
8: D
9: A
10: D
11: A
12: D
13: B
14: D
15: C
16: D
17: A
18: A
19: D
20: D