Red de conocimiento informático - Material del sitio web - Cómo utilizar Spring Cloud

Cómo utilizar Spring Cloud

El objetivo declarado del proyecto Spring Cloud es proporcionar a los desarrolladores de Spring un conjunto completo de herramientas fáciles de usar para garantizar que puedan crear fácilmente las soluciones de sistemas distribuidos que necesitan. Para lograr este objetivo, Spring Cloud integra y empaqueta una gran cantidad de pilas de implementación basadas en la pila OSS de Netflix. Estas pilas luego se pueden entregar a través de una variedad de conocidas herramientas de configuración basadas en anotaciones, herramientas de configuración de Java y herramientas de programación basadas en plantillas. Echemos un vistazo a varios componentes comunes en Spring Cloud. Spring Cloud Config Server Spring Cloud Config Server puede proporcionar un servicio de configuración centralizado con escalabilidad horizontal. Los datos que utiliza se almacenan en una capa de biblioteca conectable, que actualmente admite almacenamiento local, Git y Subversion. Al utilizar un sistema de control de versiones como solución de almacenamiento de configuración, los desarrolladores pueden ajustar fácilmente el contenido de las configuraciones de versión y auditoría. Cómo utilizar Spring Cloud para construir un sistema distribuido con autorreparación. El contenido de la configuración se reflejará en forma de propiedades Java o archivos YAML. El servidor de configuración fusiona estos archivos en un objeto de entorno, que contiene el modelo de propiedad Spring fácil de entender y los archivos de configuración que existen como API REST. Cualquier aplicación puede llamar directamente a los datos de configuración contenidos en la API REST, pero también podemos agregar un esquema de enlace de cliente inteligente a la aplicación Spring Boot, y esta última distribuirá automáticamente la información de configuración recibida del servidor de configuración a cualquier configuración local. Spring Cloud Bus Spring Cloud Config Server es un poderoso mecanismo de distribución de configuración que puede distribuir contenido de configuración a múltiples instancias de aplicaciones al tiempo que garantiza la coherencia. Sin embargo, según las limitaciones de su diseño, actualmente sólo podemos actualizar su configuración cuando se inicia la aplicación. Al enviar un nuevo valor a una propiedad en Git, debemos reiniciar manualmente cada proceso de aplicación para asegurarnos de que el valor esté realmente incluido en la aplicación. Obviamente, debe poder actualizar el contenido de configuración de la aplicación sin reiniciar. Cómo utilizar Spring Cloud para construir un sistema distribuido con recuperación automática La tarea de Spring Cloud Bus es agregar un backplane de administración a las instancias de la aplicación. Actualmente se basa en vincular un conjunto de clientes a un conjunto de intercambios y colas AMQP, pero el backend también está diseñado para ser conectable. Spring Cloud Bus aporta más puntos finales de gestión a nuestras aplicaciones. En la Figura 2, podemos ver que se envía un valor para el atributo de saludo a Git y luego se envía una solicitud al punto final /bus/refresh en la aplicación A. Esta solicitud desencadenará los tres eventos siguientes: La aplicación A solicita la última versión del contenido de configuración del servidor de configuración. Cualquier Spring Bean marcado con @RefreshScope se reinicializará y se cargará con nuevo contenido de configuración. La aplicación A envía un mensaje al mecanismo de intercambio AMQP indicando que ha recibido la indicación de actualización. La aplicación B y la aplicación C que se incluyen en Cloud Bus al escuchar la cola AMQP obtendrán el mensaje anterior e implementarán actualizaciones de configuración de la misma manera que la aplicación A. Ahora tenemos la posibilidad de actualizar la configuración de la aplicación sin reiniciar.