Volver al inicio

SOA en Factorio: comparación con monolito

El artículo analiza la implementación de SOA en Factorio a través de un bus-conveyor central y servicios especializados. Las métricas se comparan con el monolito: tiempo de construcción, recursos, escalado. Se revelan las desventajas de ESB y las ventajas de la independencia.

Factorio SOA: bus y servicios contra monolito
Advertisement 728x90

# SOA en Factorio: Arquitectura orientada a servicios vs. monolito en benchmarks

La arquitectura orientada a servicios (SOA) descompone un monolito en servicios independientes conectados mediante un bus de servicios empresarial (ESB). En Factorio, esto se modela con un bus transportador bidireccional central que distribuye recursos a ramas de producción especializadas. Comparado con un monolito, aumenta la complejidad desde el principio, pero desbloquea un potencial de escalado masivo.

El bus gestiona todo el enrutamiento: recibe peticiones de los servicios, redirige recursos y entrega resultados. Los servicios nunca se comunican directamente, solo a través del bus, imitando protocolos estandarizados. La central eléctrica se conecta al inicio del bus, extrayendo combustible directamente de él. Los líquidos fluyen por tuberías, los materiales crudos por transportadores en ambas direcciones.

Plan de implementación y desafíos iniciales

Diseño inicial: el bus se expande hacia la derecha y arriba, las ramas de producción bajan. El escalado vertical es pan comido: duplica zonas sin mezclar lógicas.

Google AdInline article slot

Adaptaciones clave del juego:

  • Los transportadores actúan como enchufes para nodos locales.
  • Trenes solo para usuarios entrantes (redes).
  • Ramas dedicadas por producto (circuitos verdes, engranajes).
  • Bus bidireccional para flujos inversos (combustible nuclear de vuelta a energía).

Desafíos:

  • Mantener el bus consume un montón de horas-hombre.
  • Límites espaciales por el ancho del bus.
  • El crecimiento vertical es fácil si reservas espacio de antemano.

Empieza con un mini-monolito en las minas para materiales de construcción: estilo MVP, inevitable sin importar el enfoque.

Google AdInline article slot

Prueba piloto: Construcción y escalado

Tras la configuración básica (transportadores, ensambladores, insertadores), conectamos fundición y energía. Las zonas de engranajes y circuitos rojos se expanden hacia abajo, el bus se alarga a la derecha. Las cintas amarillas satisfacen la demanda sin faltantes, a diferencia del monolito.

Obstáculos iniciales:

  • Las minas iniciales se agotan antes de los trenes: caminos temporales de cintas como prueba alfa con cargas ligeras.
  • La defensa contra bichos es prioritaria (muros, torretas, granadas negras), retrasando plazos de productos.
  • El bus se extiende fuera de pantalla: radares para visión general.
  • Canales poco cargados: corrientes anchas con goteo de ítems.
  • Lagos en el camino: rellénalos con vertederos.

El bus exige un montón de tiempo en tendido y mantenimiento, destacando los inconvenientes reales de SOA: complejidad del ESB al crecer. Las comunicaciones servicio-bus (rama a bus) reflejan reuniones de coordinación de equipos.

Google AdInline article slot

Métricas de mitad de partida: SOA vs. monolito

SOA brilla en rendimiento: la producción amarilla alimenta el bus y la fábrica. El monolito sufrió faltantes. El escalado es más simple: añade zonas desde el bus, sin reconstrucciones.

Pero el arranque es más lento: días en juego para el piloto sin incorporación total de usuarios. Los bichos y recursos desvían el foco de la lógica principal, como presiones presupuestarias.

La duplicación vertical de ramas (escalado de servicios) funciona de maravilla: el espaciado entre derivaciones es clave.

Lecciones clave

  • El bus es el cuello de botella: la lógica de enrutamiento se infla con servicios, arriesgando fallos.
  • Servicios independientes facilitan actualizaciones, pero exigen estándares estrictos.
  • En Factorio, SOA gana en rendimiento, pierde en espacio y tiempo de construcción.
  • Inicio con mini-monolito es el MVP para cualquier arquitectura.
  • Flujos bidireccionales son esenciales para el realismo (bucles de combustible).

— Editorial Team

Advertisement 728x90

Leer después