Cómo los Webservices encajan en un sistema de integración contínua? 

En un entorno con integración continua, ¿deberíamos refactorizar una arquitecturaa de Web Services a microservicios?. 

Una API, es el medio por el cual los terceros pueden escribir código que interactúa con otro código.

Web Services, es una gran aplicación monolítica de Java que se usa para intercambiar datos entre aplicaciones, con una comunicación estándar definida por W3C, y con una interfaz generalmente especificada cómo WSDL, y casi siempre funciona a través de HTTP.

La “arquitectura de Microservicios” es un enfoque para desarrollar una aplicación de software como una serie de pequeños servicios, cada uno ejecutándose de forma autónoma y comunicándose entre sí. Normalmente cada microservicio es pequeño y corresponde a un área de negocio de la aplicación.

Beneficios microservicios vs Webservice

– Cada microservicio se puede desplegar de forma independiente: un cambio en el módulo de inventario, no afectará a los demás, solo tendremos que subir ese módulo.

– Es fácil de entender, ya que la lógica de negocio está bien separada.

– Facilita la gestión de equipos multifuncionales y autónomos. Por sí mismo, cada microservicio es multifuncional. 

Desventajas microservicios vs Webservice

Los microservicios introducen complejidad, que hay que gestionar.

  • Por ejemplo, necesitas un despliegue automático ya que si tienes que hacerlo manualmente  te puedes morir.
  • Se complica la monitorización, la gestión de errores, la consistencia de datos, la estrategia de pruebas y más factores que introducen los sistemas distribuidos. 

Conclusiones

Está claro, que si empezamos con un proyecto, debemos ir hacia los microservicios. Pero si ya tenemos una arquitectura con web services, está claro que el coste del  refactoring no compensa. A parte, hay empresas como Facebook, que tienen despliegue continuo y no tienen una arquitectura de microservicios. 

Es mejor evolucionar a una arquitectura hacia microservicios poco a poco,  manteniendo la parte monolítica por un lado, combinada con ciertos microservicios separados.

Leave a Reply

Your email address will not be published. Required fields are marked *