Integração Empresarial (EIP)
TL;DR
Os padrões que resolvem como sistemas heterogêneos se integram por mensagens — o vocabulário nomeado de Hohpe & Woolf (Enterprise Integration Patterns, 2004). Terceira família do galho-pai Padrões de Projeto, tratada como catálogo de consulta. A lente aqui é a ferramenta de integração: como Apache Camel e Spring Integration — que são implementações dos EIPs — encarnam cada padrão. Do bloco base (Message, Channel, Pipes and Filters) ao roteamento (routers, splitter/aggregator) e à confiabilidade de produção (guaranteed delivery, dead letter, competing consumers).
Sobre esta família
Repertório de consulta para o sênior — inclusive em legado, onde ESBs, MOM (JMS/IBM MQ) e rotas Camel ainda movem o coração de bancos e seguradoras. Cada nota é autocontida; a seção Armadilhas pesa no quando não usar.
Fronteira com Comunicação entre Sistemas: este catálogo trata os padrões nomeados como vocabulário de design (lente Camel/Spring Integration); o galho Comunicação trata a infra e a decisão (qual broker, síncrono × assíncrono, JMS/IBM MQ/ESB, garantias de entrega). Sobreposição intencional → cross-link “aprofunde na infra”. Outbox e Saga são padrões de arquitetura de eventos (família 5 Eventos), fora desta.
Iniciado — os blocos base
- 01 - Panorama da integração — os 4 estilos de integração, os 6 grupos de Hohpe, a lente Camel/Spring Integration, “smart endpoints, dumb pipes”.
- 02 - Message — o envelope (header + payload); Command / Document / Event Message.
- 03 - Message Channel — fila (point-to-point) × tópico (publish-subscribe); o canal que desacopla.
- 04 - Pipes and Filters — o pipeline de filtros independentes; a metáfora-mãe que faz os padrões comporem.
Adepto — roteamento e transformação
- 05 - Content-Based Router + Message Filter — rotear pelo conteúdo (1 de N); filtrar (passa/descarta).
- 06 - Splitter + Aggregator — o par fan-out/fan-in; o Aggregator stateful e suas 4 decisões.
- 07 - Recipient List + Scatter-Gather + Resequencer — enviar a N destinos, compor respostas, reordenar.
- 08 - Message Translator + Normalizer — o Adapter da mensageria; os 4 níveis de tradução.
- 09 - Canonical Data Model — o modelo comum que corta o N×N (e o god-schema que o arruína).
Magus — endpoints, confiabilidade e escala
- 10 - Consumers - Polling × Event-Driven — pull × push; os dois modos de receber e seus trade-offs.
- 11 - Competing Consumers — N consumidores na fila; escala × ordem (particione por chave).
- 12 - Idempotent Receiver — at-least-once traz duplicatas; processar 2× = 1×.
- 13 - Guaranteed Delivery + Dead Letter Channel — não perder (persistir) e não travar (DLQ).
- 14 - Message Bus × Message Broker — hub × backbone; a lição do ESB e o mapa-de-escolha da família.
Todas as notas
TABLE fase, status, updated
FROM "03-Dominios/Engenharia/Design de Software/Padrões de Projeto/Integração Empresarial (EIP)"
WHERE type = "concept"
SORT file.name ASCVeja também
- Padrões de Projeto — o galho-pai e as outras famílias.
- Acesso a Dados — a família anterior.
- Comunicação entre Sistemas — a infra de mensageria por baixo dos padrões.