Questão de Arquitetura de Software — Software — FCC 2023
Arquitetura de Software›Software
Código
fc070436
Banca
FCC
Órgão
TRT - 21ª Região (RN)
Ano
2023
Nível
Superior
Cargo
Analista Judiciário - Área: Apoio Especializado - Tecnologia da Informação
O RestTemplate é uma classe do Spring Framework usada para fazer chamadas HTTP a serviços externos. À anotação usada para modificar o comportamento padrão do RestTemplate indicando que ele deve ser configurado para suportar o balanceamento de carga ao chamar serviços registrados em um servidor de descoberta, como o Eureka, é a anotação
A@LoadBalanced
B@LoadBalancedRestfull
C@RestfullLoadBalanced
D@ComponentBalanced
E@BeanLoadBalanced
Revelar gabarito e comentário▾
GabaritoA — @LoadBalanced
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Spring Framework: RestTemplate e balanceamento de carga com @LoadBalanced
Gabarito: letra A. A anotação correta para configurar o RestTemplate com suporte a balanceamento de carga em serviços registrados no Eureka (ou outro servidor de descoberta) é @LoadBalanced. Essa anotação permite que o RestTemplate utilize um LoadBalancerClient para distribuir as requisições entre as instâncias disponíveis.
A banca testa o conhecimento das anotações do Spring Cloud. No Spring Cloud, para tornar um RestTemplate balanceado, você declara um @Bean do tipo RestTemplate e anota o método com @LoadBalanced. Internamente, o Spring cria um RestTemplate interceptado que delega ao LoadBalancerClient a resolução do nome do serviço.
Anotação
Descrição
Status
@LoadBalanced
Anotação padrão do Spring Cloud para configurar RestTemplate com balanceamento de carga via LoadBalancerClient
✅ Correta (Gabarito)
@LoadBalancedRestfull
Anotação inexistente no Spring Framework ou Spring Cloud
❌ Incorreta
@RestfullLoadBalanced
Anotação inventada, ordem incorreta dos termos
❌ Incorreta
@ComponentBalanced
Não faz parte do ecossistema Spring Cloud
❌ Incorreta
@BeanLoadBalanced
Não é uma anotação do Spring; @Bean é usada no método, mas o qualificador é @LoadBalanced
❌ Incorreta
Alternativa A — ✅ Correta ⟵ GABARITO
@LoadBalanced é a anotação padrão do Spring Cloud para indicar que o RestTemplate deve ser configurado com balanceamento de carga, utilizando um LoadBalancerClient (como o Ribbon ou o Spring Cloud LoadBalancer).
Alternativa B — ❌ Incorreta
@LoadBalancedRestfull não existe no Spring Framework ou Spring Cloud. O nome correto é apenas @LoadBalanced. O termo "Restfull" não faz parte da anotação.
Alternativa C — ❌ Incorreta
@RestfullLoadBalanced também é uma anotação inventada. A ordem correta é "LoadBalanced" e não "Restfull" como prefixo.
Alternativa D — ❌ Incorreta
@ComponentBalanced não faz parte do ecossistema Spring Cloud. Anotações como @Component são genéricas, e @LoadBalanced é a específica para balanceamento em clientes REST.
Alternativa E — ❌ Incorreta
@BeanLoadBalanced não é uma anotação do Spring. A anotação @Bean é usada no método que declara o RestTemplate, mas o qualificador de balanceamento é @LoadBalanced, não uma combinação.
PEGA ESSA DICA!
Em provas sobre Spring Cloud, lembre-se de que a anotação é exatamente @LoadBalanced (sem extensões como "Rest" ou "Bean"). Ela deve ser aplicada no método @Bean que cria o RestTemplate. O Spring Cloud LoadBalancer (sucessor do Ribbon) também respeita essa anotação.