¿Qué son los microservicios?
Los microservicios son los distintos servicios en los que puedes dividir una aplicación. Por ejemplo, la aplicación de Instagram podría tener un servicio que se encargase solo de la autenticación, otro servicio para publicar imágenes y un tercero para guardar los comentarios. Si por cualquier problema se cae el servicio de comentarios las demás partes de la app seguirían funcionando, ya que serían servicios aislados unos de otros y no repercutiría en ellos.
Ventajas:
- 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:
- 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.