Los tres son patrones, no se trata de elegir y elegir cuál usar en cualquier circunstancia específica, sino de saber cuándo reconocer los patrones que pueden ayudarlo o lastimarlo.
Servidor Snowflake
Un servidor Snowflake es en gran medida un antipatrón que representa el caso cuando un servidor evoluciona de manera incontrolada hasta el punto en que no se puede reproducir fácilmente.
He tenido numerosas ejecuciones con este tipo de servidor en producción, son bastante fáciles de detectar ya que generalmente hay una gran cantidad de cambios fallidos y comentarios como "funcionó [el cambio] en Desarrollo / Prueba / UAT / Puesta en escena ".
Phoenix Servier
Un servidor Phoenix es más un principal que un patrón como Martin Fowler lo expresa:
Un servidor debe ser como un ave fénix, surgiendo regularmente de las cenizas. [un]
Si aplicara el lenguaje de administración de servicios de TI (ITSM) o ITIL a la misma situación, probablemente lo llamaría un plan de continuidad del servicio de TI o plan de recuperación:
Un plan separado para cada servicio debe proporcionar procedimientos detallados y pautas paso a paso para cada etapa de un incidente, de modo que los Equipos de Recuperación puedan restaurar los servicios y así cumplir con el proceso acordado y los RTO componentes.
Servidor inmutable
Un servidor inmutable o infraestructura inmutable es el proceso mediante el cual tratamos toda la infraestructura, configuración y código implementados como completamente inmutables, es decir, sin cambios. Cuando implementamos algo nuevo, activamos una nueva infraestructura e implementamos el código para esto. Curiosamente, esto satisface principalmente las necesidades tradicionalmente satisfechas por Evergreening .
Notas
- a: El colega de Martin, Kornelis Sietsma, ideó el término "Servidor Phoenix" en una lista de discusión interna.