Por favor alguien puede aclarar cuál es el uso de spring.application.index
la propiedad y por qué lo necesitamos?
Application.yml:
spring:
application:
name: ServiceName
index:
Por lo que veo, spring.application.index
se ha considerado en desuso desde la versión 2.0.0.RC1
. Juzgo de la comparación de los siguientes estos apéndices:
- Primavera de arranque
2.0.0.M7
: propiedades de aplicación común en el que elspring.application.index
se menciona. - Primavera de arranque
2.0.0.RC1
: propiedades de aplicación comunes donde elspring.application.index
no se menciona.
La declaración anterior se demostró mediante la inspección de los códigos fuente del ContextIdApplicationContextInitializer
otro lado de estas versiones:
Versión
2.0.0.M7
ContextIdApplicationContextInitializer . Estas versiones proporcionan más variabilidad en personalizar el índice de aplicación que se utiliza para la creación de 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}}}}"`
Versión
2.0.0.RC1
ContextIdApplicationContextInitializer . Podría haber encontrar el índice se incrementa automáticamente mediante el usoAtomicLong
, que también asegura su singularidad. Ver el interiorContextIdApplicationContextInitializer$ContextId
de clase para obtener más detalle en la fuente. El método clave es su constructor:ContextId createChildId() { return new ContextId(this.id + "-" + this.children.incrementAndGet()); }