TECNOLOGÍAS

Microservices

Una arquitectura que divide una aplicación en muchos servicios pequeños e independientemente desplegables, lo que te compra escalado e independencia de equipos al precio de una complejidad real de sistemas distribuidos.

Última revisión: 2026-06-02 porKevin Riedl wiki ↗

Microservices significa dividir una aplicación en muchos servicios pequeños, cada uno dueño de una parte del negocio y cada uno desplegable por su cuenta. En lugar de un programa donde todo corre en el mismo proceso, obtienes una flota de servicios que se hablan entre sí por la red. La promesa es real: los equipos pueden entregar de forma independiente, puedes escalar solo las partes que lo necesitan, y un servicio puede fallar sin llevarse abajo todo el sistema.

El coste también es real, y suele subestimarse. En el momento en que tus llamadas a funciones se convierten en llamadas de red, tienes un sistema distribuido, y los sistemas distribuidos son difíciles. Heredas fallos de red, latencia, datos repartidos entre muchas bases de datos sin transacciones fáciles, versionado entre servicios y la carga operativa de ejecutar, monitorizar y depurar muchas piezas móviles en lugar de una. Un error que antes era una traza de pila ahora es una traza a través de cinco servicios y tres colas.

La postura honesta: la mayoría de las startups deberían empezar con un monolito. Una sola aplicación bien estructurada es más rápida de construir, mucho más fácil de depurar y perfectamente capaz de llevarte hasta ingresos reales. Te divides en microservices cuando tienes una razón concreta, un equipo lo bastante grande como para que una sola base de código sea un cuello de botella, o una carga que genuinamente necesita escalado independiente, no porque los microservices sean la respuesta de moda. Los microservices prematuros son la forma en que los equipos pequeños convierten un problema difícil en diez.

Polity corría sobre siete microservices, y esa fue la decisión correcta para su escala y su estructura de equipo. Ese es el punto: la arquitectura debe seguir al problema y al organigrama, no a una charla de conferencia. Elige los límites donde de verdad reducen el acoplamiento, y acepta que cada límite que dibujas es una llamada de red que ahora tienes que defender.

// FAQ

Preguntas frecuentes

Preguntas frecuentes

Una arquitectura que divide una aplicación en muchos servicios pequeños e independientemente desplegables, cada uno dueño de una parte del negocio y que se habla con los demás por la red. Compra despliegue independiente y escalado dirigido al coste de la complejidad de sistemas distribuidos.
Un monolito es una aplicación en un proceso, más rápida de construir y mucho más fácil de depurar. Los microservices son muchos servicios en red, mejores para equipos grandes y escalado independiente pero mucho más difíciles de operar. La mayoría de las startups deberían empezar con un monolito y dividir solo cuando haya una razón concreta.
Cuando una sola base de código se ha convertido en un cuello de botella real para tu equipo, o cuando parte de la carga genuinamente necesita escalar de forma independiente. No porque esté de moda. Los microservices prematuros convierten un problema difícil en diez y frenan a un equipo pequeño.