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

Foram encontradas 172 questões

Q4104677 Arquitetura de Software

O Ministério Público de um estado brasileiro está modernizando seus sistemas de TI. A nova arquitetura de software será baseada em microsserviços hospedados na AWS e exigirá diferentes estratégias de comunicação assíncrona entre os componentes. A equipe identificou os seguintes requisitos:


I. Ingestão de dados em tempo real: As denúncias precisam ser ingeridas continuamente e em grande volume para análise posterior (streaming).


II. Notificações fan-out: Alertas críticos devem ser enviados via SMS, e-mail e push (múltiplos protocolos).


III. Compatibilidade legada: Sistemas Java que utilizam o padrão JMS devem ser integrados sem modificações significativas do código.


Considerando os serviços da AWS, atendem aos requisitos I, II e III, respectivamente:

Alternativas
Q4092975 Arquitetura de Software
Em sistemas de mensageria distribuída, são utilizadas diferentes garantias de entrega de mensagens para equilibrar confiabilidade, desempenho e complexidade de implementação. A semântica At-least-once (pelo menos uma vez) é uma das mais utilizadas em integrações assíncronas entre serviços. Assinale a alternativa que descreve corretamente a semântica At-least-once:
Alternativas
Q4092973 Arquitetura de Software
Em sistemas distribuídos, especialmente em arquiteturas de microsserviços, é comum a implementação de mecanismos de repetição automática (retry ) para lidar com falhas transitórias de rede ou indisponibilidade temporária de serviços. Nessas condições, o conceito de idempotência em APIs é essencial para garantir a consistência dos dados. Com base nos fundamentos da arquitetura REST e nas propriedades dos métodos HTTP amplamente estabelecidas na literatura e em boas práticas na construção e integração de APIs, assinale a alternativa correta:
Alternativas
Q4092972 Arquitetura de Software
Em arquiteturas de sistemas distribuídos, o padrão Publish/Subscribe (Pub/Sub) é utilizado para viabilizar comunicação assíncrona e desacoplada entre produtores e consumidores de mensagens, normalmente por meio de tópicos intermediados por um broker . Analise as afirmativas a seguir:
I.No modelo Publish/Subscribe , os publicadores não precisam conhecer previamente os assinantes, e estes podem se inscrever ou cancelar a inscrição de forma dinâmica nos tópicos de interesse.
II.O modelo Publish/Subscribe promove desacoplamento espacial (os produtores e consumidores não precisam conhecer o endereço uns dos outros) e de sincronização (não precisam aguardar resposta imediata), podendo também promover desacoplamento temporal quando há mecanismos de retenção ou persistência de mensagens no sistema.
III.No modelo Publish/Subscribe assíncrono, o publicador não depende da confirmação de recebimento por parte dos assinantes para prosseguir com sua execução.

É correto o que se afirma em: 
Alternativas
Q4091008 Arquitetura de Software
Em um sistema distribuído que utiliza middleware para difusão de mensagens com garantia de ordenação causal baseada em relógios vetoriais, um processo receptor Pi possui um relógio lógico local Vi e recebe uma mensagem m proveniente de um processo remetente Pj, carregando um carimbo de tempo vetorial Vm. Para garantir que nenhuma violação de causalidade ocorra e que todas as mensagens anteriores necessárias já tenham sido processadas, o middleware só deve entregar a mensagem m à aplicação no nó Pi se uma condição lógica específica entre os vetores for satisfeita. Assinale a alternativa que apresenta corretamente essa condição de entrega.
Alternativas
Q4089747 Arquitetura de Software
A equipe de TI de uma instituição federal está desenvolvendo um sistema de processamento de documentos que exige alta capacidade de desacoplamento entre serviços. Para evitar sobrecarga no serviço principal, decidiu utilizar o RabbitMQ como mecanismo de mensageria. Durante os testes, a equipe percebeu que alguns consumidores deveriam receber apenas mensagens específicas, distribuídas de acordo com regras detalhadas, enquanto outros consumidores deveriam receber todas as mensagens de determinado tipo. Considerando os recursos oferecidos pelo RabbitMQ, assinale a alternativa que apresenta um mecanismo adequado para atender esse cenário.  
Alternativas
Q4089733 Arquitetura de Software
Um Message Broker oferece diversos recursos que auxiliam a comunicação assíncrona entre sistemas distribuídos. Considerando esse contexto, são características associadas a um Message Broker, EXCETO
Alternativas
Q4088613 Arquitetura de Software
O Tribunal está migrando seus serviços de auditoria contínua para um cluster Kubernetes (K8s). Durante um teste de carga, um Auditor de TI observa que, embora o Horizontal Pod Autoscaler (HPA) esteja criando novas réplicas dos Pods, o tempo de resposta continua alto porque o tráfego não está sendo distribuído eficientemente entre as novas instâncias.
Para garantir que o tráfego seja enviado apenas para Pods que já completaram sua rotina de inicialização e carregamento de cache, a seguinte configuração do Kubernetes deve ser rigorosamente auditada e ajustada:
Alternativas
Q4088603 Arquitetura de Software
O TCE-SC decidiu migrar seu sistema de e-mail interno para o Microsoft Office 365, deixando de gerenciar servidores físicos e sistemas operacionais para esse fim.
Esse modelo de computação em nuvem, no qual o usuário consome a aplicação final via web, é classificado como 
Alternativas
Ano: 2026 Banca: FURB Órgão: SED-SC Prova: FURB - 2026 - SED-SC - Analista de Informática |
Q4080370 Arquitetura de Software
No modelo de computação em nuvem conhecido como Serverless Computing, frequentemente associado ao paradigma Function as a Service, aplicações são estruturadas como funções acionadas sob demanda, com abstração da infraestrutura subjacente. Nesse modelo, o provedor de nuvem assume responsabilidades como provisionamento automático, escalabilidade e gerenciamento de disponibilidade, enquanto o modelo de cobrança está associado ao uso efetivo de recursos. Considerando as características técnicas e operacionais desse modelo, assinale a alternativa correta: 
Alternativas
Q4071614 Arquitetura de Software
Considere a seguinte situação hipotética:
Uma equipe de engenharia DevOps está implantando uma aplicação web em um cluster Kubernetes, utilizando objetos do tipo Deployment para garantir alta disponibilidade e atualização controlada da aplicação.
Imagem associada para resolução da questão
Durante a implantação, foi utilizado o seguinte manifesto Kubernetes:

Considerando os conceitos de Pods, Deployments e exposição de aplicações em Kubernetes, analise as afirmativas a seguir.
I. A partir do campo replicas: 3, o Kubernetes deverá manter três Pods derivados do template especificado em spec.template, cada um executando um contêiner com a imagem nginx:1.25.
II. O campo selector.matchLabels determina quais Pods pertencem ao Deployment, devendo corresponder aos rótulos definidos em spec.template.metadata.labels.
III. A definição containerPort: 80 faz com que o Kubernetes crie automaticamente um Service para permitir acesso externo à aplicação.
IV. O Deployment gerencia a execução dos Pods por meio de ReplicaSets, responsáveis por garantir que o número desejado de réplicas esteja em execução.
V. No Kubernetes, contêineres podem ser executados diretamente nos nós do cluster, sem necessidade de encapsulamento em Pods.

Assinale a alternativa CORRETA:
Alternativas
Q4071613 Arquitetura de Software
Considere a seguinte situação hipotética:

Uma equipe de engenharia DevOps está implementando o processo de implantação automatizada de uma aplicação web como parte de um pipeline de entrega contínua. A aplicação é executada em um ambiente “conteinerizado”, composto por uma stack de serviços formada por um servidor NGINX, responsável pelo atendimento das requisições HTTP, um serviço PHP-FPM, que executa a lógica da aplicação, bem como por um banco de dados MySQL, responsável pela persistência das informações.
A orquestração desses componentes está sendo realizada por meio de um arquivo dockercompose.yml, no qual cada serviço é executado em um contêiner distinto.
Durante testes de inicialização do ambiente, a equipe observou que, em algumas execuções do comando docker compose up, o contêiner da aplicação tenta estabelecer conexão com o banco de dados antes que o serviço MySQL esteja completamente pronto para aceitar conexões, ocasionando falhas temporárias durante o bootstrap da aplicação.
Considere o trecho do arquivo docker-compose.yml utilizado pela equipe:

Fonte: dados do elaborador
Imagem associada para resolução da questão
Considerando o funcionamento do Docker Compose, bem como as boas práticas relacionadas à inicialização de serviços, resiliência de contêineres e gerenciamento seguro de credenciais, analise as afirmativas a seguir.

I. A diretiva depends_on presente no serviço app garante a ordem de inicialização dos contêineres, mas não assegura que o banco de dados esteja completamente pronto para aceitar conexões.
II. A utilização da variável ${MYSQL_ROOT_PASSWORD} no arquivo docker-compose.yml elimina os riscos de exposição de credenciais, sendo considerada equivalente ao uso de Docker Secrets em termos de segurança.
III. A política restart: on-failure definida no serviço app permite que o contêiner seja reiniciado automaticamente caso o processo principal termine com erro, contribuindo para a resiliência da aplicação em cenários de falhas transitórias.
IV. O uso de Docker Secrets é geralmente considerado mais seguro que variáveis de ambiente para armazenamento de credenciais sensíveis, pois os segredos podem ser gerenciados separadamente da configuração da aplicação e não ficam expostos diretamente no ambiente do contêiner.
V. A definição de um healthcheck no serviço db permite verificar periodicamente se o banco MySQL está operacional e possibilita identificar quando o serviço está efetivamente pronto para receber conexões.

Assinale a alternativa CORRETA:
Alternativas
Q4071606 Arquitetura de Software

Em arquiteturas modernas baseadas em microsserviços, é comum a utilização de uma API Gateway, que atua como um ponto único de entrada para requisições externas. Esse componente integra a camada de middleware, sendo responsável por funções como roteamento de requisições, autenticação, transformação de mensagens, controle de acesso e aplicação de políticas de segurança, permitindo que clientes acessem múltiplos serviços de backend de forma transparente.


Considere o seguinte exemplo de configuração simplificada de um gateway para registrar um serviço e criar uma rota de acesso:

Imagem associada para resolução da questão

Clientes podem acessar o serviço por meio do endpoint:

Imagem associada para resolução da questão

O gateway encaminhará automaticamente a requisição para o serviço backend correspondente.


Com base no funcionamento de API Gateways em arquiteturas distribuídas, analise as afirmativas a seguir.


I. A configuração apresentada permite que o cliente acesse o recurso /usuarios pelo gateway, sem precisar conhecer diretamente o endereço ou a porta do serviço backend responsável pelo processamento da requisição.


II. A presença da API Gateway na arquitetura implica que os serviços internos deixam de se comunicar diretamente entre si, passando toda interação obrigatoriamente pelo gateway.


III. A centralização do acesso aos serviços em uma API Gateway possibilita a implementação de mecanismos comuns, como autenticação, registro de logs e limitação de requisições, em um único ponto da arquitetura.



Assinale a alternativa CORRETA:

Alternativas
Q4071605 Arquitetura de Software
Em sistemas distribuídos, middleware é uma camada de software intermediária responsável por facilitar a comunicação e integração entre aplicações, sistemas e serviços. Essa camada oferece recursos como troca de mensagens, gerenciamento de APIs, autenticação e integração entre componentes de sistemas distribuídos, permitindo que diferentes aplicações interajam, mesmo estando executando em ambientes distintos.
Entre as soluções utilizadas para comunicação assíncrona estão os message brokers, que implementam o modelo de fila de mensagens, no qual produtores enviam mensagens para uma fila e consumidores as processam posteriormente.

Considere o seguinte código em Python, que utiliza a biblioteca pika para consumir mensagens de uma fila em um broker implementado com RabbitMQ.
  Imagem associada para resolução da questão
Esse código ilustra um consumidor de mensagens que se conecta a um broker RabbitMQ e recebe mensagens publicadas em uma fila.
Com base no conceito de middleware e no funcionamento de sistemas de mensageria em arquiteturas distribuídas, analise as afirmações a seguir:
I. O programa estabelece uma conexão com um servidor de mensageria e passa a atuar como consumidor de mensagens da fila denominada “tarefas”.
II. Para toda mensagem entregue ao consumidor a partir da fila tarefas, a função callback será executada para processar o conteúdo recebido.
III. A utilização de um middleware de mensageria como o RabbitMQ implica que produtores e consumidores precisam estar em execução simultaneamente para que a comunicação ocorra de maneira síncrona.

Assinale a alternativa CORRETA.
Alternativas
Q4052480 Arquitetura de Software
No contexto de computação em nuvem, especialmente em ambientes IaaS e PaaS, a escalabilidade horizontal (scaling out) é uma estratégia utilizada para aumentar a capacidade de processamento por meio da adição de novas instâncias de recursos. Nesse contexto, é correto afirmar que:
Alternativas
Q4038042 Arquitetura de Software
Analise as afirmativas a seguir a respeito de Web Services e REST e assinale a alternativa correta.

I. Web Services são projetados para serem independentes de plataforma e linguagem de programação, permitindo que diferentes sistemas e aplicativos se comuniquem entre si.
II. HTML, XML e JSON são exemplos de formatos adotados por Web Services para enviar e receber dados.
III. REST é um estilo arquitetural para sistemas distribuídos, muitas vezes utilizado para construir Web Services leves e escaláveis.
IV. Um dos princípios de REST é a adoção de URL única para acesso a todos os recursos (dados, serviços).
Alternativas
Q4035432 Arquitetura de Software

A computação em nuvem permite que organizações consumam recursos tecnológicos sob demanda, sem a necessidade de manter toda a infraestrutura física localmente. Os modelos de serviço em nuvem IaaS, PaaS e SaaS estabelecem diferentes níveis de responsabilidade compartilhada entre o provedor e o cliente sobre os recursos da pilha tecnológica. Diante disso, analise as afirmativas a seguir:


I. O provedor disponibiliza servidores virtuais, armazenamento e rede; o cliente é responsável por instalar e gerenciar o sistema operacional, o middleware e as aplicações sobre a infraestrutura provisionada.


II. O provedor gerencia a infraestrutura física e o ambiente de execução; o cliente desenvolve e implanta suas próprias aplicações sobre a plataforma disponibilizada, sem se preocupar com servidores ou sistema operacional.


III. O provedor opera toda a pilha tecnológica, da infraestrutura à aplicação; o cliente acessa o software pronto pela internet, sem nenhuma responsabilidade sobre o ambiente subjacente.


Considerando isso, assinale a alternativa que associa CORRETAMENTE cada afirmativa acima ao modelo de serviço em nuvem correspondente.

Alternativas
Q4032107 Arquitetura de Software
No Kubernetes, o Master Node ou Control Plane é responsável por gerenciar o cluster, coordenando os nós de trabalho e garantindo que os pods e serviços estejam em conformidade com o estado desejado. O Master Node possui vários componentes essenciais, cada um com funções específicas para manter o cluster funcionando corretamente. Diante disso, qual componente do Master Node funciona como banco de dados distribuído, armazenando o estado do cluster e todas as informações de configuração dos recursos do Kubernetes?
Alternativas
Q4019752 Arquitetura de Software

Acerca de arquiteturas serverless e event-driven, de balanceamento de cargas e de autoescalonamento, julgue o item a seguir.


Em arquiteturas event-driven serverless, a execução de funções é interrompida por eventos publicados por serviços produtores e modificada por consumidores de forma desacoplada, sendo incomum a utilização de mecanismos de mensageria ou de streams para intermediar a entrega desses eventos.

Alternativas
Q4019751 Arquitetura de Software

Acerca de arquiteturas serverless e event-driven, de balanceamento de cargas e de autoescalonamento, julgue o item a seguir.


Em infraestruturas com balanceadores de carga, o autoescalonamento horizontal consiste em aumentar dinamicamente a capacidade computacional de uma instância já existente, enquanto o balanceador distribui requisições entre múltiplas instâncias dessa mesma máquina virtual.

Alternativas
Respostas
1: A
2: D
3: C
4: E
5: A
6: E
7: B
8: C
9: C
10: C
11: A
12: C
13: C
14: D
15: A
16: E
17: D
18: D
19: E
20: E