01
Qué es y qué problema resuelve
Un módulo separa responsabilidades dentro de un despliegue. Un microservicio añade contratos remotos y operación independiente.
Separar procesos puede permitir autonomía, pero también convierte fallos de red y evolución de mensajes en parte del comportamiento cotidiano.
02
Ejemplo paso a paso
Punto de partida Decisión original y revisable; no es una receta universal. Diferencia consistencia crítica de un efecto que puede entregarse después.
Antes de ejecutar
Contrato o esquema de diseño para analizar; no es una aplicación ejecutable completa. La evidencia principal es la decisión y su justificación. Una comprobación automatizada requiere implementar el control en una solución preparada.
Decisión: mantener reservas y disponibilidad en un módulo.
Motivo: comparten la garantía de no solapamiento.
Frontera candidata: entrega de avisos mediante outbox.
Revisión: cuando exista necesidad medible de operación independiente.Cómo funciona
- Identifica la garantía que comparten reservas y disponibilidad.
- Compara una transacción local con fallos parciales entre servicios.
- Documenta qué necesidad medible justificaría separar procesos.
Resultado esperado: El equipo puede explicar cuándo una separación aporta valor y qué pruebas exigiría.
03
Cuándo usarlo y qué debes evitar
Comienza por límites de dominio y datos. Si dos funciones deben confirmar juntas constantemente, separarlas exige una estrategia de consistencia explícita.
Evalúa equipo, escalado y disponibilidad frente al costo de trazas distribuidas, reintentos, despliegue y recuperación. No uses cantidad de carpetas como evidencia de autonomía.
Ampliación opcional · contexto y variantes del tema
Monolito modular y antipatrón de complejidad
Comienza con módulos internos y fronteras de datos explícitas cuando un equipo necesita entregar una aplicación coherente. Separar despliegues exige contratos remotos, observabilidad distribuida, evolución de mensajes y tolerancia a fallos parciales. Un módulo con muchas llamadas síncronas a otro puede empeorar al convertirse en servicio remoto.
Identifica tres señales de sobrearquitectura: interfaces que solo reexpresan una clase; eventos para encadenar pasos que deben ser atómicos; y handlers que atraviesan muchas capas sin agregar significado. Simplificar no significa mezclar permisos con SQL en cualquier endpoint. Conserva las fronteras que protegen cambios y elimina las que solo agregan navegación.
04 · Práctica guiada · opcional
Practica lo aprendido
Compara dos despliegues y un módulo para disponibilidad y reservas.
- 01Prepara el ejemplo con las dependencias indicadas en «Antes de ejecutar».
- 02Compara dos despliegues y un módulo para disponibilidad y reservas.
- 03Comprueba y registra el resultado: El equipo puede explicar cuándo una separación aporta valor y qué pruebas exigiría.
Ver solución orientativa
Documenta transacción, fallos parciales y costo operativo. No concluyas solo por una expectativa genérica de escala.
05
Comprueba lo aprendido
Responde antes de abrir la explicación. Esta comprobación es opcional y no guarda una puntuación.
01¿Un microservicio elimina el acoplamiento?
No. Un contrato remoto mal diseñado puede aumentar acoplamiento.
02¿Qué diferencia hace que avisos sea una frontera distinta de disponibilidad?
Avisos puede procesar trabajo confirmado posteriormente mediante outbox y reintentos. Disponibilidad y reserva comparten una garantía de escritura; separarlas cambia el problema de consistencia.
Cómo demostrar el objetivo
Compara tu práctica con estos resultados. Si solo diseñaste una prueba, registra su resultado como esperado, no como observado.
- La decisión explica por qué reservas y disponibilidad conservan un límite común.
- Para avisos identificas contrato, entrega pendiente y fallos que exigirían otra estrategia.
Qué debes recordar
- Un módulo separa responsabilidades dentro de un despliegue.
- Un servicio independiente añade contratos y operación propios.
Tu cuaderno · notas personales
Cuaderno local
Tus notas del contenido
Se guardan únicamente en este dispositivo. Puedes exportarlas cuando quieras.
Material de apoyo · descarga, glosario y referencias
Explicaciones, ejemplos y prácticas propios de Academia de Software. Los fragmentos de integración requieren las dependencias indicadas; el ZIP contiene el núcleo de consola. Las lecturas externas se consultan en su sitio original y conservan sus condiciones. Procedencia y condiciones de uso.