Learn

Good QuestionVuoi Excel at aziendale integrazione patterns?

Cancel anytime

Impara come nostro IA-powered piattaforma helps team Raggiungere breakthrough risultati in aziendale integrazione patterns.

65

canonical EIP patterns from Hohpe & Woolf still cited daily

78%

of enterprise architects use Saga or Outbox in production

4.7

average integration patterns combined per critical workflow

22

years since the original EIP book; patterns still apply

Key Features

Message Routing

Content-based routers, recipient lists, and dynamic routers direct messages by inspecting payloads instead of hard-coding destinations.

Splitter & Aggregator

Break composite messages into per-item processing, then re-assemble results with correlation IDs and completion timeouts.

Outbox & CDC

Atomically write business state and outbound events in one transaction, then publish via change-data-capture for guaranteed delivery.

Saga Orchestration

Coordinate long-running, distributed transactions with explicit compensating actions when any step fails.

Canonical Data Model

Translate vendor-specific schemas into a shared internal model so endpoints evolve independently without N×M mapping pain.

Agentic Pattern Selection

AI assistants in modern iPaaS suites recommend the right EIP pattern (router vs aggregator vs saga) based on the integration intent.

DE

By Dr. Eva Hoffmann · Enterprise Architect

Updated May 6, 2026

EIPs in 2026: still the foundation, now AI-assisted

The Enterprise Integration Patterns catalog — 65 patterns spanning messaging, routing, transformation, endpoints, channels, and system management — remains the canonical vocabulary for integration architecture. Hohpe and Woolf published it in 2003 to give teams a shared language for the messaging-based systems that were replacing tightly-coupled SOAP integrations. Two decades later, those same patterns describe Kafka topologies, Step Functions state machines, Workato recipes, and the LLM agent orchestrations being built today.

What changed is the substrate. The 2003 examples ran on JMS brokers and Java EE. The 2010s reinterpretation ran on RabbitMQ, Kafka, and serverless functions. The 2026 reinterpretation runs on managed iPaaS, event meshes, and AI-native runtimes that can reason about which pattern to apply. A modern Swfte Connect workflow combining a Content-Based Router, an Aggregator, and a Saga is structurally identical to the textbook diagram — the difference is that the routing rules and compensation logic are increasingly authored by an AI assistant from intent.

The practical advice for architects in 2026 is unchanged: name your patterns, prefer asynchrony, design for partial failure, keep messages immutable, and isolate transformation. The teams that ignore EIPs invariably reinvent them — usually badly — under pressure. See event-driven architecture and our long-form analysis on EIP in the agentic era.

Eight most-used EIP patterns in 2026

PatternWhen to applyAnti-pattern when skipped
Message RouterMultiple downstream consumers, varying interestShotgun broadcast — every consumer filters
Content-Based RouterRouting depends on payload fieldsHard-coded if/else chains in producer
AggregatorMust combine multiple messages into one resultLost correlation, duplicate writes
SplitterComposite payload needs per-item processingSingle huge transaction; partial-failure pain
TranslatorSchema differs between source and destinationN×M direct mappings; brittle to vendor changes
SagaLong-running transaction across servicesDistributed deadlocks, orphaned state
OutboxService must reliably emit events on state changeDual-write race — ghost events or lost events
Change-Data-CaptureReplicate state changes to other systemsPolling at the application layer; stale data

Pattern, when to apply, and the anti-patterns that show up when teams skip them.

EIP in the agentic-AI era

AI agents are not a replacement for EIPs — they are new endpoints that participate in classical patterns. An agent receives a message via a Content-Based Router, reasons over it, and emits a result that an Aggregator combines with deterministic outputs. The hard problems — idempotency, ordering, retries, compensation — do not disappear because an LLM is in the loop; they get harder. Treat agents as non-deterministic services and apply the same EIPs you would to any other unreliable endpoint.

Architectural review checklist for EIP adoption

  • Pattern naming — can your team name every router, splitter, and aggregator in the design?
  • Idempotency — every consumer handles duplicate delivery without side effects.
  • Correlation IDs — every message carries a traceable ID across all hops.
  • Dead-letter handling — every channel has a DLQ with replay tooling.
  • Schema evolution — canonical data model isolates internal services from vendor changes.
  • Saga compensation — every step in a long-running flow has a documented rollback.
  • Outbox usage — no dual-write between database and message broker anywhere.
  • Observability — per-pattern metrics: routing accuracy, aggregation completion rate, saga compensation rate.

The 65 Hohpe & Woolf patterns through a 2026 agentic lens

The original Hohpe and Woolf catalog organized 65 patterns into six families: messaging systems (channels, message construction, endpoints), messaging channels (point-to-point, publish-subscribe, dead-letter), message construction (event message, document message, command message), message routing (router, recipient list, splitter, aggregator, scatter-gather, routing slip), message transformation (translator, content enricher, content filter, claim check, normalizer), and messaging endpoints (polling consumer, event-driven consumer, competing consumers, idempotent receiver). Two decades later the families are still right; the implementations look very different.

The 2026 agentic-AI era introduces three reinterpretations. First, endpoints can be non-deterministic — an LLM agent receives a message, reasons over it, and emits a result with semantic but not byte-level reproducibility. The classical pattern of "idempotent receiver" still applies, but idempotency must be evaluated at the semantic layer (did this agent already process this customer?) not just message-ID dedup. Second, routers can be intent-driven. Instead of "route by content field X equals Y", a content-based router can use an embedding model or a small classifier to route by intent. The pattern is the same; the routing predicate is now learned. Third, aggregators must handle partial agent failures gracefully. When you scatter-gather to 5 agents and 1 returns nonsense, the aggregator needs a quality gate, not just a completion timeout.

The good news: the 65 patterns are still the right vocabulary. The bad news: anyone shipping AI-orchestrated workflows without naming their patterns is rebuilding a distributed monolith with prompts. Treat your agent calls as message endpoints, your tools as services, and your prompts as message contracts. See multi-agent architectures and EIP in the agentic era for the full mapping.

How to apply EIP to a modern stack in 8 steps

  1. Identify service boundaries. Use Domain-Driven Design bounded contexts. Each bounded context becomes a candidate for its own messaging endpoint and owns its schemas. Cross-context calls are integration work; in-context calls are not.
  2. Choose a messaging substrate. Kafka for high-throughput event streaming, RabbitMQ for classical work-queue patterns, NATS for ultra-low-latency micro-messages, AWS SQS+SNS for serverless integration without ops, Pub/Sub on GCP, Service Bus on Azure. Pick one primary and avoid mixing without strong reason.
  3. Define schemas with explicit evolution rules. Use Protobuf with backward-compatibility checks in CI, Avro with a Schema Registry, or JSON Schema with versioned $id. Never publish a freeform JSON event — you cannot deprecate fields you cannot enumerate.
  4. Apply the canonical data model. Translate vendor schemas into a shared internal model at ingress and egress. This isolates internal services from vendor changes — when Salesforce renames a field, only one Translator changes, not 47 consumers.
  5. Wire the Outbox pattern for every state-changing service. Write business state and outbound events in the same database transaction; a relay (Debezium, custom CDC, or vendor offering) reads from outbox to broker. This eliminates the dual-write race that breaks naive event-driven systems.
  6. Use Saga for long-running cross-service transactions. Each step is a local transaction with a documented compensating action. Choose orchestration (a central coordinator) for transactional integrity and choreography (each service reacts to events) for pure scalability. Most enterprises pick orchestration for transactional flows and choreography for non-transactional broadcasts.
  7. Implement dead-letter queues with replay tooling. Every consumer must have a DLQ. Every DLQ must have a UI or CLI to inspect, edit, and replay messages. Without replay you have a write-only graveyard.
  8. Wire correlation IDs and per-pattern observability. Every message carries a correlation ID propagated across hops. Track router accuracy, aggregation completion rate, saga compensation rate, and DLQ depth as first-class metrics. You cannot improve patterns you cannot measure.

Messaging substrates compared

SubstrateThroughputOrderingExactly-onceBest for
Apache KafkaMillions msgs/secPer-partitionYes (idempotent producer + transactions)Event streaming, CDC, log-based architectures
RabbitMQTens of thousands/secPer-queue (classic) or per-streamNo native; at-least-once + idempotent consumerWork queues, RPC, classical EIP patterns
NATS / NATS JetStreamHundreds of thousands/secPer-stream (JetStream)Yes (JetStream)Ultra-low-latency micro-messaging, edge
Apache PulsarMillions msgs/secPer-partition with shared subsYes (idempotent producer + dedup)Geo-replicated streaming + queueing in one broker
AWS SQS + SNSEffectively unlimited (managed)FIFO queues onlyFIFO with dedup ID; Standard at-least-onceServerless integration, no ops, AWS-native stacks
Google Pub/SubMillions msgs/secPer-key orderingYes (with exactly-once subscriptions, 2023+)GCP-native, planet-scale event distribution
Azure Service BusTens of thousands/secSessions (FIFO per session)Duplicate detection windowAzure-native enterprise messaging, BizTalk replacement

Seven substrates dominating 2026 enterprise integration architectures and their guarantees.

EIP anti-patterns that wreck enterprise integrations

Three anti-patterns we see most often in 2026 architecture reviews: (1) the god-router — one giant content-based router with 200+ branches that owns business logic for the whole system, becoming impossible to change; (2) the distributed monolith — "microservices" that all share the same database and deploy together, getting all the cost of distribution with none of the benefit; (3) choreography for transactional workflows — using event-driven choreography for a flow that requires atomicity (e.g. payment + inventory + shipping), which gives you no central place to reason about or compensate failures. Use orchestration for transactional flows, choreography for broadcasts, and split routers when they exceed a dozen branches.

Real-world example: an insurance company replacing batch ETL with event-driven CDC

A 4,000-employee P&C insurer (anonymized) ran a nightly batch ETL pipeline moving claims data from their core policy admin system (a 1990s-era mainframe with a DB2 backend) into a modern data warehouse for actuarial reporting and a Salesforce Service Cloud instance for adjuster workflows. The batch ran from midnight to 06:00 and was the SLA cliff for everything downstream — if it failed, adjusters started their shift with stale data and actuaries lost a day of analysis.

They redesigned the integration around the Outbox + CDC pattern. The mainframe team added an outbox table inside the same database transaction as every claim insert/update. A Debezium connector read DB2 transaction logs and published events to Kafka in near-real-time. A canonical "ClaimEvent" schema (Avro, registered in Confluent Schema Registry) abstracted the mainframe's quirky column names. Three consumers attached to the topic: one writing to Snowflake (streaming via Kafka Connect), one updating Salesforce via a Translator + idempotent receiver, and one feeding their fraud-detection model.

Architecturally they applied seven canonical EIPs: Outbox (atomicity), CDC (change capture), Translator (schema mapping), Content-Based Router (separating claim-update vs claim-create event handling), Idempotent Receiver (every consumer dedup'd by event_id), Dead-Letter Channel (failed Salesforce writes went to a DLQ with a Slack alert + replay UI), and Aggregator (combining claim events with policy lookups for the fraud model). End result: the 6-hour batch SLA collapsed into a 12-second median end-to-end latency. Adjusters started their shift with current data; actuaries ran reports throughout the day instead of waiting for the morning batch. The mainframe team kept the legacy batch in place as a safety net for the first 90 days, then decommissioned it. See Swfte Connect for managed Outbox and CDC patterns.

Orchestration vs choreography for AI agent workflows: a decision framework

  1. Is the workflow transactional? If success or failure of the whole flow matters (a single agent failure should roll back upstream work), use orchestration with a central coordinator (Temporal, Step Functions, Workato, Swfte Connect). Choreography cannot give you transactional guarantees.
  2. How many agents and how variable is the flow? Under 5 agents with a fixed sequence: orchestration is fine and easier to debug. Over 10 agents with branching by intent: a hybrid — orchestrated outer loop with choreographed inner agent collaboration — usually wins.
  3. Are agents independently developed and deployed? If different teams own different agents and you cannot coordinate releases, choreography reduces blocking. The trade-off is harder reasoning about end-to-end correctness.
  4. What is your observability story? Orchestrated flows produce a single trace per workflow run; choreographed flows require distributed tracing across event streams. If you cannot wire OpenTelemetry across all agents, prefer orchestration.
  5. How do you handle partial failure? Orchestration: define compensating actions per step (Saga). Choreography: define dead-letter handling per event consumer plus a reconciliation job. Pick the model your team can operate.
  6. What is the latency budget? Orchestration adds coordinator hops; choreography is point-to-point. If sub-200ms end-to-end matters, lean choreography. If 1–30s is fine, orchestration is simpler.
  7. Cost of getting it wrong. Choreography failures look like "events disappear and nobody notices for hours". Orchestration failures look like "the coordinator throws and the whole flow halts loudly". The latter is usually preferable for high-stakes work.
  8. Plan for evolution. Most mature shops start with orchestration (easier to reason about, debug, and audit) and selectively introduce choreography for high-fan-out broadcasts where transactional integrity is not required. Pure choreography at scale is rare and usually accidental.

EIP and the API gateway: complementary, not competing

A frequent confusion in 2026 architecture reviews is whether an API gateway "replaces" enterprise integration patterns. It does not. An API gateway (Kong, Apigee, AWS API Gateway, Azure API Management, Tyk, Zuplo) sits at the ingress edge and handles authentication, rate limiting, request shaping, and routing for inbound traffic to your services. It implements a small slice of EIPs — mostly Message Router, Content-Based Router, and Translator — at L7 with sub-millisecond latency. EIPs as a discipline cover everything after the gateway: how messages move between services, how state is reconciled, how long-running transactions are coordinated, and how partial failures are recovered.

The right pattern in most enterprises is an API gateway plus an event mesh plus an iPaaS or workflow runtime, each owning a different layer. The gateway terminates external traffic and routes to internal services. The event mesh (Kafka, Pulsar, Pub/Sub, Solace) carries asynchronous events between services. The iPaaS or workflow runtime (Workato, Boomi, MuleSoft, Step Functions, Temporal, Swfte Connect) implements the higher-order EIPs — Saga, Aggregator, Routing Slip — that span multiple services and require persistent state. Treat the three layers as complementary; teams that try to collapse all three into one tool invariably end up reinventing the missing layers under pressure.

One useful exercise for architecture teams: take a recent production incident, walk it backwards, and identify which layer failed and which EIP would have prevented it. Most incidents map cleanly to a missing pattern — a missing Idempotent Receiver allowed duplicate writes, a missing Dead-Letter Channel turned a transient vendor outage into permanent data loss, a missing Saga compensation left state inconsistent across services. Pattern coverage is not academic; it is the cheapest insurance you can buy against the next 2am page.

Trusted by Teams Worldwide

"Finally, a soluzione that just works. Setup was painless, features are potente yet intuitive, e supporto has been outstanding."

Emily Thompson

Emily Thompson

Director of Engineering at InnovateLabs

"We evaluated 10+ soluzioni e this was il/la clear winner. Il/la IA capabilities e integrazione options are unmatched."

David Park

David Park

CTO at DataFlow Inc

"Nostro team adopted it in giorni, not months. Il/la interface is so intuitive that training was minimal."

Lisa Anderson

Lisa Anderson

Product Manager at CloudScale

Frequently Asked Questions

Enterprise integration patterns (EIPs) are a catalog of 65 reusable solutions for messaging-based system integration, originally documented by Gregor Hohpe and Bobby Woolf in 2003. They cover message routing, transformation, endpoints, channels, and system management. Twenty-three years on, the patterns still describe the canonical building blocks of any non-trivial integration, including modern event-driven and serverless architectures.

Enterprise integration architecture is the deliberate design of how systems communicate across an organization — the choice of messaging vs API calls, sync vs async, point-to-point vs hub-and-spoke vs event mesh, and the governance around schemas, contracts, and security. EIPs are the vocabulary used to describe and reason about that architecture.

The most-used patterns in 2026 production systems are Message Router, Content-Based Router, Aggregator, Splitter, Translator, Saga, Outbox, and Change-Data-Capture. The shift since 2010 has been toward asynchronous, event-driven variants — Saga and Outbox especially — as microservices replaced monoliths.

Every modern iPaaS implements EIPs under different names. Workato "recipes" combine Filter, Transform, and Splitter; MuleSoft DataWeave is a Translator; AWS Step Functions implements Saga and Aggregator. See <a href="/prds/learn/what-is-ipaas">what is iPaaS</a> for the platform layer.

Saga coordinates a long-running business transaction across multiple services using a sequence of local transactions, each with a defined compensating action if a later step fails. You need it whenever a workflow spans services that cannot share a single ACID transaction &mdash; the typical case in 2026 microservice estates.

The Outbox pattern guarantees that a service publishes an event if and only if it commits the corresponding state change. The service writes to a local "outbox" table inside the same database transaction; a relay process then publishes from the outbox. It eliminates the dual-write problem that breaks naive event-driven systems.

The most damaging anti-patterns are point-to-point spaghetti, distributed monoliths sharing databases, ignoring idempotency, no dead-letter queues, and hand-rolled retries without backoff. Adopting a canonical data model, an event mesh, and an iPaaS / API gateway eliminates most of them. See <a href="/prds/learn/microservices-integration">microservices integration</a>.

Two shifts. First, AI agents become first-class endpoints &mdash; you route messages <em>to</em> agents the way you would to a service. Second, pattern selection itself is becoming AI-assisted: vendors like <a href="/products/connect">Swfte Connect</a> recommend the right EIP based on intent and observed traffic. The patterns themselves are unchanged; the authoring layer above them is.