Questões de Concurso Sobre arquitetura de software
Foram encontradas 8.088 questões
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:
O padrão de projeto de arquitetura de software a ser implementado para interromper chamadas a um serviço que está a falhar, permitindo que o sistema degrade graciosamente em vez de colapsar, é o
Esse modelo de computação em nuvem, no qual o usuário consome a aplicação final via web, é classificado como
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.
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:
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
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:
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:

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

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:
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.
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.
Considerando o catálogo de serviços disponíveis e a arquitetura oficial de interoperabilidade, assinale a alternativa que contém solução técnica CORRETA para viabilizar essa consulta, de acordo com os princípios previstos na Lei de Governo Digital.
Assinale a alternativa correta considerando o requisito segurança e sua relação com a arquitetura de software.
Assinale a alternativa correta considerando o uso do XML no contexto da interoperabilidade de sistemas.
Ao avaliar a eficiência e a confiabilidade de uma arquitetura de sistemas, o analista deve considerar que:
A consolidação de uma arquitetura nacional de dados torna desnecessária a auditoria periódica dos sistemas implementados.
I.O WS-Security permite aplicar assinatura digital e criptografia em partes específicas da mensagem SOAP, bem como incluir tokens de autenticação como UsernameToken, certificados X.509 e assertions SAML.
II.A segurança em nível de mensagem proporcionada pelo WS-Security permanece válida mesmo na presença de múltiplos intermediários, diferentemente da segurança baseada exclusivamente em TLS.
III.O OAuth 2.0 é um framework de autorização que não provê, por si só, mecanismos de criptografia ou assinatura de mensagens SOAP em nível de mensagem.
É correto o que se afirma em: