Sobre el proyecto
Apollo es un sistema de gestión de configuración de código abierto diseñado para escenarios de microservicios. Gestiona centralizadamente configuraciones de diferentes aplicaciones, entornos, clústeres y espacios de nombres a través de una interfaz unificada.
Capacidades clave descritas en el README:
- Gestión unificada de configuraciones para diferentes entornos y clústeres, con un concepto de espacio de nombres que permite que múltiples aplicaciones compartan y personalicen configuraciones. La interfaz de usuario soporta chino e inglés.
- Cambios de configuración en tiempo real (publicación en caliente): después de modificar y publicar una configuración, los SDK reciben los valores más recientes en aproximadamente un segundo y notifican a la aplicación.
- Gestión de versiones de publicación: cada publicación tiene una versión, lo que permite la reversión de configuraciones.
- Publicación en escala de grises: una publicación puede primero surtir efecto en un subconjunto de instancias de la aplicación antes de propagarse a todas las instancias.
- Búsqueda global de elementos de configuración por clave o valor, mostrando qué aplicación, entorno, clúster y espacio de nombres utiliza un valor determinado.
- Gestión de autorización, aprobación de publicaciones y auditoría de operaciones: la edición y la publicación están separadas, y las operaciones se registran para su seguimiento.
- Monitoreo de configuración del lado del cliente: muestra qué instancias utilizan qué versiones de configuración.
- SDK: SDK nativos para Java y .NET, integración con Spring/Spring Boot (placeholders, anotaciones, ConfigurationProperties), API HTTP y SDK de terceros como Golang, Python, NodeJS, PHP, C y Rust.
- API de plataforma abierta para aplicaciones que necesitan formatos personalizados o validación antes de guardar configuraciones.
- Implementación sencilla: la única dependencia externa es MySQL; el servidor se ejecuta en Spring Boot/Spring Cloud sin necesidad de contenedor adicional, y los scripts de empaquetado generan paquetes de instalación.
El proyecto está licenciado bajo Apache 2.0 y proporciona documentación que cubre inicio rápido, implementación distribuida, diseño, guías de SDK, preguntas frecuentes y gobernanza comunitaria.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.