Arquitectura Monolítica
¿Qué es una Arquitectura Monolítica?
Una arquitectura monolítica es aquella en la que las principales capacidades de una aplicación (en ecommerce, esto incluye catálogo, carrito, checkout, contenido y presentación) se construyen y se despliegan como una única unidad. El código base es unificado, el runtime es compartido, y los cambios en una parte suelen requerir volver a desplegar toda la aplicación.
Definición
Los monolitos dominaron el software de comercio durante dos décadas porque simplificaban el desarrollo inicial y las operaciones. Un solo código base, una sola base de datos, un solo pipeline de despliegue. La contrapartida es que las partes del sistema se acoplan cada vez más estrechamente con el tiempo, lo que hace que los cambios puntuales sean lentos y arriesgados. Un problema de rendimiento en una capacidad puede degradar toda la aplicación.
Por qué es importante hoy
La mayoría de las plataformas de comercio legadas que están en producción son monolíticas. Funcionan, pero limitan la velocidad con la que un comerciante puede cambiar su tienda, integrar nuevos servicios o responder a problemas de rendimiento. Rediseñar la página de detalle de producto puede requerir coordinarse con los ingenieros de backend; incorporar un nuevo proveedor de pagos puede necesitar un release mayor.
Patrones de migración
Pocos operadores reescriben un monolito de una sola vez. El camino más habitual es introducir una tienda headless delante del monolito, tratar el backend monolítico como una fuente de API, e ir extrayendo gradualmente servicios especializados (búsqueda, contenido, recomendaciones, pagos) desde su interior. Con el tiempo, el monolito se reduce hasta funcionar únicamente como motor de comercio, y en algún momento puede llegar a sustituirse por completo. Este patrón se conoce a veces como el enfoque strangler fig.
Relacionado
Explora Composable Digital Experience Platform · Composable Headless Frontend.