Dado que antes solo he estado expuesto a aplicaciones de servicio único y las he creado yo mismo, el método de implementación es relativamente informal. Si desea implementarlo, simplemente cree un paquete de guerra e impleméntelo. Después de entrar en contacto con los servicios múltiples distribuidos, las cosas no son tan simples. Si aún usa el método anterior, habrá dos problemas: por un lado, el servicio se interrumpirá temporalmente durante el proceso de actualización de la nueva versión. Por otro lado, si la nueva versión tiene errores, la actualización falla y es muy problemático revertirla, lo que fácilmente puede provocar que el servicio no esté disponible durante un período de tiempo más largo.
La siguiente es una comprensión de los métodos de implementación centralizados comunes:
La implementación azul-verde es un método de implementación que puedo pensar por mí mismo sin tener en cuenta otras recomendaciones. La ejecución directa de las dos versiones de la aplicación no detiene el funcionamiento de la versión anterior, pero espera a que la nueva versión se ejecute normalmente antes de cambiar el tráfico a la nueva versión. Sin embargo, las deficiencias también son obvias. 10 servidores son suficientes. El problema resuelto ahora requiere 20 unidades.
El lanzamiento continuo puede resolver el problema de duplicar los requisitos de hardware durante la implementación azul-verde. Al actualizar, en lugar de iniciar todos los servicios, inicie un nuevo servicio y reemplace el servicio antiguo correspondiente. Esto normalmente requiere 10 servidores, pero ahora solo se necesitan 11. La desventaja también es obvia, es decir, es demasiado inestable y. Es difícil rastrear los problemas si ocurren.
La liberación en escala de grises también se llama liberación de canarios. El origen es que los trabajadores mineros descubrieron que los canarios son muy sensibles al gas. Los mineros pondrán un canario en el pozo antes de bajar. chirriando, significa que la concentración de gas es alta.
Después de que comienza el lanzamiento en escala de grises, primero se lanza una nueva versión de la aplicación, pero el tráfico no se corta directamente. En lugar de ello, los evaluadores realizan pruebas en línea de la nueva versión de la aplicación. Se lanza es Nuestro canario. Si no hay ningún problema, puede importar una pequeña cantidad de tráfico de usuarios a la nueva versión y luego observar el estado de ejecución de la nueva versión y recopilar varios datos de tiempo de ejecución si compara varios datos entre las versiones anterior y nueva en este momento. , se llama prueba A/B.
Después de confirmar que la nueva versión está funcionando bien, se importará gradualmente más tráfico a la nueva versión. Durante este período, la cantidad de copias del servidor en ejecución de las versiones antigua y nueva también puede aumentar continuamente. ajustado para que la nueva versión pueda soportar la creciente presión del tráfico. Hasta que el 100% del tráfico se cambie a la nueva versión, los servicios restantes de la versión anterior finalmente se cierran para completar el lanzamiento en escala de grises.
Si se descubre un problema con la nueva versión durante el proceso de lanzamiento en escala de grises (período de escala de grises), el tráfico debe volver a cambiar inmediatamente a la versión anterior, de modo que el impacto negativo se controle al mínimo.