Alguém por favor pode esclarecer o que é o uso de spring.application.index
propriedade e por que precisamos dela?
Application.yml:
spring:
application:
name: ServiceName
index:
Tanto quanto eu ver, o spring.application.index
tem sido considerado obsoleto desde a versão 2.0.0.RC1
. I julgar comparando os seguintes esses apêndices:
- Primavera Bota
2.0.0.M7
: propriedades de aplicação comuns , onde ospring.application.index
é mencionado. - Primavera Bota
2.0.0.RC1
: propriedades de aplicação comuns , onde ospring.application.index
não é mencionado.
A declaração anterior é provado por inspecionar os códigos-fonte do ContextIdApplicationContextInitializer
outro lado estas versões:
Versão
2.0.0.M7
ContextIdApplicationContextInitializer . Estas versões fornecer mais variabilidade na personalização do índice do aplicativo usado para a criação ApplicationContextID./** * Placeholder pattern to resolve for application index. The following order is used * to find the name: * <ul> * <li>{@code vcap.application.instance_index}</li> * <li>{@code spring.application.index}</li> * <li>{@code server.port}</li> * <li>{@code PORT}</li> * </ul> * This order favors a platform defined index over any user defined value. */`"${vcap.application.instance_index:${spring.application.index:${server.port:${PORT:null}}}}"`
Versão
2.0.0.RC1
ContextIdApplicationContextInitializer . Não poderia ser encontrar o índice é incrementado automaticamente usando usandoAtomicLong
, o que também garante a sua singularidade. Veja o interiorContextIdApplicationContextInitializer$ContextId
de classe para mais detalhes na fonte. O método chave é seu construtor:ContextId createChildId() { return new ContextId(this.id + "-" + this.children.incrementAndGet()); }