Questão de Programação — Frameworks em Programação — IF-SP 2026
ProgramaçãoFrameworks em Programação
- Código
- qg710304
- Banca
- IF-SP
- Órgão
- IF-SP
- Ano
- 2026
- Nível
- Superior
- Cargo
- Analista de Tecnologia da Informação
Analise o seguinte trecho de uma aplicação Django, que implementa caching em uma view que lista produtos de uma loja on-line. A view requer autenticação e exibe descontos personalizados por usuário. O middleware de caching está configurado corretamente.
Qual das alternativas abaixo descreve corretamente o comportamento de caching nesta implementação, considerando múltiplos usuários autenticados acessando a view simultaneamente e possíveis problemas relacionados ao caching do fragmento de template e da view?
Qual das alternativas abaixo descreve corretamente o comportamento de caching nesta implementação, considerando múltiplos usuários autenticados acessando a view simultaneamente e possíveis problemas relacionados ao caching do fragmento de template e da view?- AO caching da view inteira será compartilha do entre todos os usuários autenticados, pois @vary_on_headers(‘Cookie’) não afeta o cache do fragmento de template, que é recalculado dinamicamente por requisição, garantindo que o desconto_personalizado seja único por usuário.
- BO decorator @cache_page será aplicado antes do @login_required, cacheando respos tas de redirecionamento (HTTP 302) para usuários não autenticados, o que pode levar a loops de redirecionamento, enquanto o fragmento de template será ignorado devido ao caching da view.
- CO fragmento de template {% cache %} será ignorado porque a view já está cacheada com @cache_page, resultando em um cache global da página renderizada, sem variação por usuário, e o desconto_personalizado será fixo para todos os acessos até a expiração do cache da view.
- DA combinação de @vary_on_ headers(‘Cookie’) e @login_required ga rante que o cache da view seja único por usuário, mas o fragmento de template, com a chave estática produtos_lista, é cacheado globalmente, incluindo o desconto_personalizado. Isso faz com que todos os usuários vejam o mesmo desconto personalizado do primeiro usuário que gerou o cache do fragmento, até sua expiração.