¿Qué es la arquitectura de microservicios y cuál es el ejemplo en tiempo real?

Si desarrolla una aplicación utilizando una arquitectura de Microservicios, su aplicación tiene pequeños módulos independientes que se pueden implementar por separado. Los microservicios le permiten desarrollar software flexible y escalable .

Permítanme explicar mis pensamientos dando el ejemplo popular de una red social. Este ejemplo me es familiar ya que solíamos desarrollar una red social con arquitectura de microservicios.

Entonces, ¿por qué las redes sociales a menudo se crean utilizando microservicios? Puedo nombrar al menos dos razones para eso.

  • Primero y principal, Flexibilidad. Significa que la arquitectura de Microservicios es mucho más fácil de mantener y soportar que Monolith. Dejame explicar. Si un sistema consta de diferentes módulos independientes, puede corregir y modificar todos y cada uno de ellos. Quiero decir por separado. Cuando un módulo necesita ser actualizado, no tiene miedo de tener un tiempo de inactividad que afecta a todo el sistema. Simplemente anuncia que parte de su sitio web pasará por el mantenimiento programado e irá con un flujo.
  • El segundo y no menos importante es la escalabilidad. Cuando se trata de la actualización de hardware de un sistema con arquitectura de microservicios, es una tarea bastante fácil. Puede escalar gradualmente módulos separados, no es necesario actualizar todo el sistema a la vez.

Por lo general, las redes sociales tienen varios módulos responsables de diferentes características como fotos, noticias, historias o transmisiones en vivo. Cuando necesita hacer algunos cambios de código en Historias, no apaga todo. Su audiencia continúa utilizando una red social, pero tienen Historias no disponibles hasta que termine de actualizar. Durante el mantenimiento de Historias, otras funciones permanecen sanas y salvas. Eso es flexibilidad.

La escalabilidad, a su vez, significa que no necesita actualizar fotos, noticias y transmisiones en vivo junto con historias. Si las historias MAU son demasiado grandes, simplemente agregue nuevo hardware a este módulo en particular.

Espero que mi respuesta te ayude.

Microservicios es un estilo arquitectónico que estructura una aplicación como una colección de pequeños servicios autónomos, modelados alrededor de un dominio de negocio.

Si desea comprender cómo el enfoque de microservicios cambia el método de desarrollo de aplicaciones de grandes empresas, considere la siguiente ilustración de una aplicación de carrito de compras.

En el enfoque tradicional para crear aplicaciones, todas las características se agrupan en una sola base de código y se encuentran en una única base de datos subyacente.

Para evitar los desafíos relacionados con el escalado, la modificación y la adición de nuevas características, los desarrolladores de esta aplicación decidieron cambiar su aplicación de una arquitectura monolítica a microservicios, como se muestra en el siguiente diagrama.

Esto significa que los desarrolladores no crean un microservicio web, un microservicio lógico o un microservicio de base de datos. En cambio, crean microservicios separados para búsqueda, recomendaciones, servicios al cliente, etc.

Muchos grandes jugadores en diversas industrias han desarrollado sus aplicaciones utilizando Microservicios.

Uno de los primeros en adoptar la tecnología de microservicios fue la compañía de entretenimiento estadounidense Netflix, que hace una década comenzó a migrar lentamente de un monolito de software tradicional a una arquitectura de microservicios basada en la nube. Esta decisión permitió a Netflix desarrollar y lanzar múltiples servicios a sus clientes con gran velocidad, escala y flexibilidad. La implementación de Netflix fue tan exitosa que ofrecieron muchas de las herramientas de software con las que se desarrolló su arquitectura de microservicios. Hoy Netflix es visto como un pionero en el desarrollo de microservicios, y su enfoque se ha convertido en un objeto de estudio para muchas otras empresas en todo el mundo.

Puede comenzar a aprender sobre Microservicios revisando este enlace de youtube:

O puede consultar este blog:

¿Qué son los microservicios? Introducción a la arquitectura de microservicios | Edureka

Si está interesado, también puede consultar el curso de Edureka sobre microservicios.

Microservicios Arquitectura Formación | Edureka