Resumen
Si desarrolla aplicaciones de microservicios en contenedor significa que está compilando aplicaciones de varios contenedores. Pero una aplicación de varios contenedores también podría ser más sencilla (por ejemplo, una aplicación de tres niveles) y podría no compilarse con
una arquitectura de microservicios. Anteriormente se planteó la pregunta "¿Se necesita Docker para compilar una arquitectura de microservicios?". La respuesta es un no rotundo. Docker es un habilitador y puede proporcionar grandes ventajas, pero los contenedores y Docker no son un requisito imprescindible para los microservicios. Por ejemplo, podría crear una aplicación basada en
microservicios con o sin Docker al usar Azure Service Fabric, que es compatible con los microservicios que se ejecutan como procesos simples o como contenedores de Docker. Pero si sabe cómo diseñar y desarrollar una aplicación basada en microservicios que también se base en contenedores de Docker, podrá diseñar y desarrollar cualquier modelo de aplicación más sencillo. Por ejemplo, podría diseñar una aplicación de tres niveles que también
requiera un enfoque de varios contenedores. Debido a eso, y dado que las arquitecturas de microservicios son una tendencia importante en el mundo de los contenedores, esta propuesta se centra en la implementación de una arquitectura de microservicios con contenedores de
Docker. Por último, si tenemos que ya somos capaces de desarrollar mejores aplicaciones lo que querremos será desplegarlas en producción en el menor tiempo posible. Es ahí donde entra en juego Kubernetes y cómo se ha convertido en el núcleo de los principales PaaS y de un gran número de productos Cloud para la gestión de contenedores.
Abstract:
If you develop containerized microservices applications, it means you are building applications from multiple containers. But a multi-container application could also be simpler (for example, a three tier application) and might not compile with a microservices architecture. Previously, the question was asked "Do you need Docker to compile a microservices architecture?". The answer is a resounding no. Docker is an enabler and can provide great
benefits, but containers and Docker are not a prerequisite for microservices. For example, you could create a microservices-based application with or without Docker by using Azure Service Fabric, which supports microservices that run as simple processes or as Docker containers. But if you know how to design and develop a microservices-based application that is also based on Docker containers, you can design and develop any simpler application model. For example, you could design a three-tier application that also requires a multi-container approach. Because of that, and since microservices architectures are a major trend in the world of containers, this proposal focuses on the implementation of a Docker container microservices
architecture. Finally, if we have to be able to develop better applications, what we want to do is deploy them in production in the shortest possible time. This is where Kubernetes comes into play and how it has become the core of the main PaaS and a large number of Cloud products for
container management.