Uma equipe de analistas do TJRJ está implementando microsse...

Próximas questões
Com base no mesmo assunto
Q3874364 Arquitetura de Software
Uma equipe de analistas do TJRJ está implementando microsserviços com o apoio do Spring Cloud. Para garantir a descoberta e a comunicação entre os microsserviços, a equipe optou por implementar um servidor Eureka. Durante a configuração do Eureka, o analista Silva percebeu que é crucial configurar o atributo que controla o tempo máximo que o servidor irá considerar uma instância como ativa, antes de marcá-la como desconectada. É correto afirmar que o nome do atributo do Eureka, percebido como crucial por Silva, contém a string: 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: A decisão estava na distinção entre o atributo de expiração do lease e o de renovação do heartbeat no Eureka; a string pedida é a que integra o parâmetro de expiração.

Tema central: Propriedades do Eureka
Análise das alternativas
A
Errada
`wait-time` está errada porque não corresponde ao atributo de expiração da instância por ausência de heartbeat. O critério decisivo era identificar a string presente em `lease-expiration-duration-in-seconds`, e não um termo genérico de espera.
B
Errada
`update-interval` está errada porque não nomeia o atributo do Eureka que define até quando a instância permanece ativa sem heartbeat. Não corresponde ao atributo de expiração do lease indicado na base.
C
Certa
A alternativa C está certa porque a documentação diferencia `eureka.instance.lease-expiration-duration-in-seconds`, que controla o tempo até a instância ser removida por ausência de heartbeat, de `eureka.instance.lease-renewal-interval-in-seconds`, que controla a frequência do heartbeat. Por isso, a string correta é `lease-expiration`.
D
Errada
`renewal-interval` está errada porque remete ao atributo de frequência de heartbeat, isto é, `lease-renewal-interval-in-seconds`. A questão cobrava o prazo máximo de tolerância antes da desconexão, que é expiração, não renovação.
E
Errada
`heartbeat-interval` está errada porque esse não é o nome da propriedade decisiva no Eureka para esse controle. A base informa que a frequência de heartbeat aparece como `lease-renewal-interval-in-seconds`, enquanto a desconexão por ausência de heartbeat é tratada por `lease-expiration-duration-in-seconds`.
Pegadinha da questão
A confusão real era trocar o intervalo de envio de heartbeat (`lease-renewal`) pelo prazo de expiração por ausência de heartbeat (`lease-expiration`).
Dica para questões semelhantes
  • Quando a questão falar em tempo máximo sem heartbeat antes de remover ou desconectar a instância, procure `lease-expiration`.
  • Quando a questão falar em frequência de envio de heartbeat, procure `lease-renewal`.
  • Em propriedades do Eureka, não marque por semelhança sem verificar a string exata usada na configuração oficial.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Gabarito (C)

  • eureka.instance.lease-expiration-duration-in-seconds: tempo que Eureka espera desde o último heartbeat antes de considerar a instância obsoleta. Valor padrão é 90.

Fontes: https://cursos.alura.com.br/forum/topico-mensagem-de-alerta-no-servidor-eureka-225392

https://medium.com/@gaddamnaveen192/how-eureka-server-know-instance-status-when-an-instance-is-up-or-down-c83d3dd4620d

Fonte ChatGpt

Vamos analisar cada alternativa:

A) wait-time

❌ Não existe esse atributo no Netflix Eureka.

Pode até parecer algo relacionado a tempo de espera, mas não faz parte das configurações reais do Eureka.

B) update-interval

❌ Também não é um atributo padrão do Eureka.

O nome sugere atualização, mas no Eureka o termo correto usado é renewal (renovação), não update.

C) lease-expiration

Correta

Refere-se ao tempo máximo que o servidor espera sem receber heartbeat antes de considerar a instância fora do ar:

.

D) renewal-interval

❌ Existe, mas não responde à pergunta.

Esse atributo () define de quanto em quanto tempo o cliente envia heartbeat, e não o tempo limite para expiração.

Ou seja: controla o envio, não a remoção.

E) heartbeat-interval

❌ Não é o nome usado pelo Eureka.

Embora o conceito de heartbeat exista, o Eureka usa o termo renewal, não heartbeat na configuração.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo