Integraciones que sobreviven al cambio
REST es un estilo arquitectónico. SOAP es un protocolo de mensajería. Ambos pueden integrarse sin contaminar el dominio si contratos, errores y efectos quedan detrás de adaptadores explícitos.
Aislar contratos externos del dominio
- REST / SOAPauth · contratos · errores
- Adaptadoresmapeo · timeout · retry
- Dominioreglas sin transporte
- Outboxatomicidad · idempotencia
- PostgreSQLtablas · índices · particiones
- Operaciónquery plans · bloat · autovacuum
Contratos y fallos explícitos
REST y SOAP no son equivalentes exactos, pero comparten riesgos operativos: autenticación, timeouts, respuestas parciales y cambios de contrato. El adaptador traduce transporte y errores a conceptos del dominio.
- Contract tests sobre ejemplos reales.
- Timeouts y retries solo para operaciones seguras.
- Idempotency keys o deduplicación para comandos.
- Circuit breaking cuando protege al sistema, no como decoración.
PostgreSQL: medir antes de partir
El particionamiento ayuda cuando el patrón de acceso y mantenimiento puede excluir particiones; también agrega objetos y complejidad. Los índices aceleran lecturas a cambio de espacio y costo de escritura. La decisión empieza con datos y un query plan.
- EXPLAIN (ANALYZE, BUFFERS) en un entorno seguro.
- Índices alineados con filtros, joins y orden.
- Particionamiento por rango, lista o hash solo con un criterio estable.
- Sharding o distribución únicamente cuando un solo nodo medido deja de ser suficiente.
Bloat y autovacuum son operación normal
Actualizaciones y borrados dejan tuplas muertas. Autovacuum recupera espacio reutilizable y mantiene estadísticas; su configuración debe observarse por tabla. El bloat se diagnostica con evidencia y conceptos concretos, no con una etiqueta vaga.
- Edad de transacciones y riesgo de wraparound.
- Tuplas muertas, frecuencia y duración de vacuum.
- Crecimiento de tablas e índices.
- Reindex o reescritura solo tras medir causa e impacto.