Em um algoritmo que realiza chamadas em rede em paralelo, por que preferir uma função stateless (sem estado)…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Compreender os conceitos de paralelismo, concorrência e armazenamento/ processamento distribuídos.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em um algoritmo que realiza chamadas em rede em paralelo, por que preferir uma função stateless (sem estado) ao reaproveitá-la em diferentes serviços?
- A) Porque funções stateless não mantêm estado interno entre chamadas, permitindo execução paralela segura e reutilização em serviços distintos.
- B) Funções stateful garantem maior segurança em chamadas paralelas.
- C) Execução sequencial é melhor que execução paralela para funções stateless.
- D) Funções podem manter estado entre chamadas para melhor performance.
- E) Reaproveitar a mesma função com estado é sempre seguro entre serviços.
✅ Resposta correta: alternativa A
Resolução passo a passo
- A questão pergunta por que preferir funções stateless (sem estado) quando elas são reaproveitadas em diferentes serviços, especialmente em algoritmos com chamadas de rede executadas em paralelo.
- Uma função stateless não guarda informações internas entre uma chamada e outra. Cada execução depende apenas dos parâmetros recebidos, então não há dados compartilhados sendo alterados por chamadas concorrentes.
- Essa ausência de estado compartilhado é o que torna a execução paralela segura, pois não surgem condições de corrida sobre variáveis internas. Pelo mesmo motivo, a função pode ser reutilizada em serviços distintos sem que um serviço contamine o comportamento do outro.
- Logo, a alternativa A é a correta, e o gabarito oficial coincide com essa conclusão.
- A alternativa B está errada porque funções stateful são justamente as que guardam estado e, em paralelo, esse estado pode ser corrompido sem sincronização. A alternativa C está errada porque a questão trata de paralelismo como vantagem, e não há motivo geral para preferir execução sequencial. A alternativa D está errada porque manter estado entre chamadas é exatamente o oposto de ser stateless e não é o motivo da preferência. A alternativa E está errada porque reutilizar uma função com estado entre serviços pode causar interferência entre eles, não é sempre seguro.
💡 Dica: Considere as vantagens de funções sem estado em sistemas distribuídos.
Alternativa por alternativa
Sem dependência de estado, a função evita conflitos e side-effects, facilita escalabilidade e pode ser instanciada em múltiplos serviços sem sincronização complexa.
O aluno associa 'estado' a maior controle e segurança, imaginando que guardar informações internas protege as chamadas concorrentes.
Por que engana: Confundir funções stateful com stateless, acreditando que manter estado interno é seguro em chamadas paralelas.
O aluno acredita que, por não haver estado, a execução deve ser sequencial para evitar problemas, confundindo ausência de estado com necessidade de ordem.
O aluno entende que manter estado entre chamadas gera melhor desempenho e não percebe que isso contraria a definição de função stateless que a questão pergunta.
O aluno supõe que, se a função funciona em um serviço, funcionará sempre em outros, ignorando que o estado compartilhado pode gerar interferência entre serviços.
Raio-X da questão
funções stateless
avaliacao
funções stateless · execução paralela em algoritmos
Revisar os conceitos de funções stateless e sua aplicação em algoritmos.
Confundir funções stateful com stateless, acreditando que manter estado interno é seguro em chamadas paralelas.
ciencia_tecnologia
tomada_decisao
abstrato
Questões parecidas com resolução
- Por que, ao generalizar um algoritmo para várias instâncias, é preferível passar dados via parâmetros em vez de usar…
- Ao decompor um algoritmo que atualiza a mesma variável de estado em várias subtarefas, que estratégia reduz efeitos…
- Descreva um plano para transformar um algoritmo de recomendação stateful (que usa variáveis locais de sessão e…
- Para tornar um algoritmo reutilizável e seguro para execução paralela, qual prática relacionada a variáveis e efeitos…
- Em um algoritmo que sincroniza registros escolares por rede, qual subrotina deve ser isolada para tratar apenas a…
- Como um protocolo stateful influencia o tratamento de pacotes por um firewall ou roteador em comparação com um protocolo…
Todas as questões de Sistemas distribuídos e internet - Fundamentos de sistemas distribuídos
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
