Aplicaciones monolíticas vs microservicios

Clase 3 de 20Curso de Deploy con Now.sh 2017

Resumen

¿Qué son las aplicaciones monolíticas?
Todo el código está en una sola aplicación.

Ventajas de las aplicaciones monolíticas:

  • Buena para aplicaciones pequeñas.
  • Fácil de desarrollar.
  • Fácil de hacer deploy.
  • Fácil para trabajar individual o en equipos pequeños.

Desventajas de las aplicaciones monolíticas:

  • Difícil de mantener a largo plazo.
  • Costosa para escalar.
  • En caso de un error se puede caer toda la aplicación.
  • Más difícil testear.
    -Más difícil de depurar.

¿Qué es un microservicio?
El código dividido en varias aplicaciones.

Ventajas de los microservicios:

  • Fácil de hacer deploy.
  • Fácil de escalar.
  • Fácil de testear.
  • Fácil de depurar.
  • En caso de error solo se cae un servicio.
  • Se pueden utilizar diferentes tecnologías.

Desventajas de los microservicios:

  • Difícil de orquestar.
  • Puede ser lenta la comunicación entre servicios.
  • Difícil saber cómo dividir nuestra aplicación.
  • Es más costoso de mantener.

Importante:

Orquestación y Coreografía de Servicios = Ambos conceptos se basan en cómo hacer para comunicar nuestros servicios y que todo funcione como si fuera una sola aplicación.