Pular para o conteúdo principal

Quiz de Validação - MÓDULO 11

Este quiz de 30 questões permite validar seus conhecimentos sobre AWS Lambda antes de passar para o laboratório prático.


Questão 1​

O que é AWS Lambda?

A) Um tipo de instância EC2
B) Um serviço de computação serverless que executa código sem gerenciar servidores
C) Um serviço de banco de dados
D) Um Load Balancer

Ver resposta

Resposta: B

AWS Lambda é um serviço de computação serverless que executa seu código em resposta a eventos. Você não gerencia nenhum servidor: sem provisionamento, sem manutenção, sem scaling manual. Você paga apenas pelo tempo de execução.


Questão 2​

O que significa "serverless"?

A) Sem servidores nenhum
B) Você não precisa gerenciar os servidores - a AWS cuida disso
C) Servidores gratuitos
D) Servidores virtuais

Ver resposta

Resposta: B

Serverless não significa que não há servidores, mas sim que você não precisa gerenciá-los. A AWS provisiona, mantém e escala a infraestrutura automaticamente. Você se concentra apenas no seu código.


Questão 3​

Como o Lambda é cobrado?

A) Por hora
B) Por número de requisições e tempo de execução (GB-segundos)
C) Pacote mensal
D) Por número de funções

Ver resposta

Resposta: B

O Lambda é cobrado pelo número de invocações (primeiros 1M/mês gratuitos) e pela duração da execução medida em GB-segundos (memória alocada x tempo). Não há cobrança quando o código não está em execução.


Questão 4​

Qual é o tempo máximo de execução de uma função Lambda?

A) 5 minutos
B) 15 minutos
C) 1 hora
D) Ilimitado

Ver resposta

Resposta: B

O timeout máximo de uma função Lambda é de 15 minutos (900 segundos). Se seu processamento exceder esse tempo, considere dividi-lo em várias funções, usar Step Functions ou migrar para EC2/ECS.


Questão 5​

Quais linguagens de programação o Lambda suporta nativamente?

A) Apenas Python
B) Python, Node.js, Java, Go, .NET, Ruby
C) Apenas Java
D) Apenas JavaScript

Ver resposta

Resposta: B

O Lambda suporta nativamente: Python, Node.js, Java, Go, .NET (C#, PowerShell), Ruby. Você também pode usar custom runtimes para outras linguagens via Lambda Layers ou containers.


Questão 6​

O que é um "event" no Lambda?

A) Um evento de calendário
B) Os dados JSON passados para a função durante sua invocação
C) Um log
D) Um erro

Ver resposta

Resposta: B

O event é um documento JSON contendo os dados que disparam a execução. Sua estrutura depende da fonte (S3, API Gateway, SQS, etc.). A função recebe esse event e o contexto de execução.


Questão 7​

O que é um "trigger" do Lambda?

A) Um gatilho físico
B) Uma fonte de eventos que invoca automaticamente a função
C) Um botão de início
D) Um tipo de erro

Ver resposta

Resposta: B

Um trigger é um serviço AWS configurado para invocar automaticamente sua função Lambda. Exemplos: S3 (novo arquivo), API Gateway (requisição HTTP), CloudWatch Events (cron), DynamoDB Streams, SQS, SNS, etc.


Questão 8​

Quais serviços AWS podem disparar o Lambda?

A) Apenas S3
B) S3, API Gateway, DynamoDB, SQS, SNS, CloudWatch, Kinesis, e mais
C) Apenas API Gateway
D) Apenas CloudWatch

Ver resposta

Resposta: B

Diversos serviços podem disparar o Lambda: S3 (eventos de objetos), API Gateway (HTTP), DynamoDB Streams, SQS, SNS, CloudWatch Events/Logs, Kinesis, Cognito, IoT, Step Functions, etc. Isso é a essência da arquitetura event-driven.


Questão 9​

O que é o "handler" em uma função Lambda?

A) Um gerenciador de erros
B) O ponto de entrada da função, o método chamado durante a invocação
C) Um tipo de trigger
D) Um arquivo de configuração

Ver resposta

Resposta: B

O handler é o ponto de entrada da sua função. É o método que o Lambda chama quando a função é invocada. Formato: arquivo.método (ex: index.handler em Node.js, lambda_function.lambda_handler em Python).


Questão 10​

Como configurar a memória para uma função Lambda?

A) Ela é fixa
B) Você escolhe entre 128 MB e 10.240 MB, o CPU é alocado proporcionalmente
C) Automaticamente
D) Via EC2

Ver resposta

Resposta: B

A memória é configurável de 128 MB a 10.240 MB (10 GB) em incrementos de 1 MB. O CPU é alocado proporcionalmente: mais memória = mais CPU. Com 1.769 MB, você obtém o equivalente a um vCPU completo.


Questão 11​

O que são "Environment Variables" no Lambda?

A) Variáveis de ambiente do sistema
B) Pares chave-valor configuráveis acessíveis pelo seu código
C) Variáveis de compilação
D) Variáveis de faturamento

Ver resposta

Resposta: B

As Environment Variables permitem passar configurações (URLs de banco, API keys, flags) para sua função sem alterar o código. Podem ser criptografadas com KMS. Acessíveis via os.environ (Python) ou process.env (Node.js).


Questão 12​

O que é um Lambda Layer?

A) Uma camada de segurança
B) Um pacote de código/bibliotecas compartilhado entre várias funções
C) Uma camada de rede
D) Um nível de pricing

Ver resposta

Resposta: B

Um Lambda Layer é um arquivo ZIP contendo bibliotecas, runtimes customizados ou outras dependências. Os Layers podem ser compartilhados entre funções, reduzindo o tamanho do pacote de deploy e facilitando atualizações.


Questão 13​

O que é o "cold start" do Lambda?

A) Um início a frio do servidor
B) O atraso inicial quando o Lambda provisiona um novo ambiente de execução
C) Um erro de inicialização
D) Um modo de economia de energia

Ver resposta

Resposta: B

O cold start ocorre quando o Lambda precisa criar um novo ambiente de execução (baixar o código, iniciar o runtime). Isso adiciona latência (100ms a alguns segundos). As invocações seguintes reutilizam o ambiente (warm start).


Questão 14​

Como reduzir os cold starts?

A) É impossível
B) Provisioned Concurrency, manter funções leves, evitar VPC se possível
C) Aumentar apenas a memória
D) Usar apenas Java

Ver resposta

Resposta: B

Estratégias: ativar Provisioned Concurrency (ambientes pré-aquecidos), reduzir o tamanho do pacote, evitar VPCs desnecessárias (adicionam latência), escolher runtimes de inicialização rápida (Python, Node.js vs Java).


Questão 15​

O que é "Concurrency" no Lambda?

A) Competição entre funções
B) O número de instâncias da sua função executadas simultaneamente
C) A consistência dos dados
D) Um tipo de trigger

Ver resposta

Resposta: B

A concurrency é o número de execuções simultâneas da sua função. Cada invocação concorrente usa um ambiente de execução separado. A AWS pode escalar para milhares de execuções simultâneas.


Questão 16​

Qual é o limite padrão de concurrency por região?

A) 100
B) 1.000
C) 10.000
D) Ilimitado

Ver resposta

Resposta: B

O limite padrão é de 1.000 execuções simultâneas por região (compartilhado entre todas as funções). Esse limite pode ser aumentado via solicitação de quota. Reserved Concurrency permite garantir capacidade.


Questão 17​

O que é "Reserved Concurrency"?

A) Concorrência reservada para VIPs
B) Capacidade de concorrência garantida para uma função específica
C) Concorrência de backup
D) Concorrência planejada

Ver resposta

Resposta: B

Reserved Concurrency reserva parte da capacidade de concorrência da conta para uma função específica. Garante que a função sempre terá essa capacidade, mas também limita seu máximo.


Questão 18​

O que é "Provisioned Concurrency"?

A) Concorrência provisória
B) Ambientes de execução pré-inicializados para eliminar cold starts
C) Concorrência em espera
D) Concorrência temporária

Ver resposta

Resposta: B

Provisioned Concurrency mantém um número especificado de ambientes de execução inicializados e prontos. Isso elimina os cold starts, mas tem um custo (você paga mesmo sem invocações). Ideal para aplicações sensíveis à latência.


Questão 19​

Como o Lambda acessa recursos em um VPC?

A) Automaticamente
B) Configurando a função para se conectar ao VPC (subnets, Security Groups)
C) Via VPN
D) Não é possível

Ver resposta

Resposta: B

Configure a função com as subnets e Security Groups do VPC. O Lambda cria ENIs (Elastic Network Interfaces) nessas subnets. Atenção: isso pode aumentar o cold start e a função perde acesso direto à Internet (necessitando de um NAT).


Questão 20​

Se o Lambda está em um VPC, como ele acessa a Internet?

A) Automaticamente
B) Via um NAT Gateway em uma subnet pública
C) Não é possível
D) Via VPC Peering

Ver resposta

Resposta: B

Uma função Lambda em um VPC não tem acesso direto à Internet. Para acessar a Internet (APIs externas), configure um NAT Gateway em uma subnet pública e direcione o tráfego da subnet do Lambda para o NAT.


Questão 21​

O que é um IAM Role para Lambda?

A) Um papel na equipe
B) As permissões concedidas à função para acessar recursos AWS
C) Um usuário IAM
D) Um grupo de segurança

Ver resposta

Resposta: B

Cada função Lambda assume um IAM Role de execução que define suas permissões: ler S3, escrever no DynamoDB, publicar SNS, escrever logs no CloudWatch, etc. Aplique o princípio do menor privilégio.


Questão 22​

Onde os logs do Lambda são armazenados?

A) Na própria função
B) No CloudWatch Logs, grupo /aws/lambda/nome-funcao
C) No S3
D) No DynamoDB

Ver resposta

Resposta: B

Os logs do Lambda são enviados automaticamente para o CloudWatch Logs em um grupo chamado /aws/lambda/nome-da-sua-função. Cada invocação cria entradas de log. A função precisa das permissões logs:CreateLogGroup, PutLogEvents.


Questão 23​

Como testar uma função Lambda?

A) Somente em produção
B) Pela console (Test event), AWS CLI, ou localmente com SAM/LocalStack
C) Apenas via API Gateway
D) Não é testável

Ver resposta

Resposta: B

Teste via: console AWS (crie test events em JSON), AWS CLI (aws lambda invoke), AWS SAM CLI para testes locais, ou LocalStack para emular o Lambda localmente. Automatize com frameworks de teste.


Questão 24​

O que é AWS SAM (Serverless Application Model)?

A) Uma rede social
B) Um framework open-source para definir e fazer deploy de aplicações serverless
C) Um serviço de monitoramento
D) Um tipo de Lambda

Ver resposta

Resposta: B

AWS SAM é um framework que estende o CloudFormation para simplificar o desenvolvimento serverless. Ele fornece: uma sintaxe simplificada para definir Lambda/API Gateway/DynamoDB, um CLI para build/teste local e deploy.


Questão 25​

O que é uma "dead letter queue" (DLQ) para Lambda?

A) Uma fila para mensagens mortas
B) Um destino para invocações que falharam após os retries
C) Uma fila de prioridade
D) Uma fila de backup

Ver resposta

Resposta: B

A DLQ (SQS ou SNS) recebe os eventos que falharam mesmo após as tentativas de retry. Isso permite analisar as falhas sem perder as mensagens. Configure-a para invocações assíncronas.


Questão 26​

Qual a diferença entre invocação síncrona e assíncrona?

A) Nenhuma
B) Síncrona espera a resposta, Assíncrona retorna imediatamente
C) Assíncrona é mais rápida
D) Síncrona é gratuita

Ver resposta

Resposta: B

Invocação síncrona: o chamador espera a resposta do Lambda (API Gateway, CLI com RequestResponse). Assíncrona: o chamador recebe um ack imediato, o Lambda processa em background com retries automáticos (eventos S3, SNS).


Questão 27​

Como versionar uma função Lambda?

A) Apenas via Git
B) Publicando versões imutáveis e usando aliases
C) Não é possível
D) Automaticamente

Ver resposta

Resposta: B

Publique versões imutáveis da sua função. Crie aliases (ponteiros) como "prod", "dev" para versões específicas. Isso permite deploy blue/green e rollbacks. $LATEST é a versão mutável de trabalho.


Questão 28​

O que é um Alias do Lambda?

A) Um pseudônimo
B) Um ponteiro nomeado para uma versão específica da função
C) Uma cópia da função
D) Um backup

Ver resposta

Resposta: B

Um Alias é um ponteiro nomeado (ex: "prod", "dev") para uma versão específica. Você pode redirecionar um alias para uma nova versão sem alterar as configurações dos triggers. Suporta também traffic shifting para canary deployments.


Questão 29​

O que é "Lambda@Edge"?

A) Lambda na borda da rede
B) Lambda executado nas edge locations do CloudFront
C) Uma versão edge do Lambda
D) Lambda para IoT

Ver resposta

Resposta: B

Lambda@Edge permite executar funções Lambda nas edge locations do CloudFront, mais próximo dos usuários. Útil para personalizar conteúdo, autenticação, redirecionamentos, manipulação de requisições/respostas com baixíssima latência.


Questão 30​

Qual comando AWS CLI invoca uma função Lambda?

A) aws lambda run
B) aws lambda invoke --function-name MyFunction output.json
C) aws lambda execute
D) aws lambda start

Ver resposta

Resposta: B

O comando é aws lambda invoke --function-name NomeFuncao --payload arquivo.json output.json. Ele invoca a função com o payload especificado e grava a resposta no arquivo de saída.


Resultado​

Conte suas respostas corretas:

  • 27-30: Excelente - Você domina AWS Lambda
  • 22-26: Bom - Alguns pontos para revisar
  • 17-21: Médio - Releia o curso antes do laboratório
  • Menos de 17: Insuficiente - Refaça o curso desde o início

Passe para o Lab Lambda assim que atingir pelo menos 22 respostas corretas.