System Design Space
Knowledge graphSettings

Updated: March 25, 2026 at 1:00 AM

Enterprise Integration Patterns (short summary)

medium

Enterprise Integration Patterns have not aged out because queues, channels, and message routing still fail in very familiar ways.

In real design work, the chapter shows how channels, routers, transformers, and other EIP building blocks have to be tied to delivery guarantees, ordering, traceability, and the shape of the actual integration flow.

In interviews and engineering discussions, it helps treat poison messages, dead-letter strategy, and replay as mandatory parts of integration design rather than rare emergency cases.

Practical value of this chapter

Design in practice

Match message channels, routers, and transformers to real integration flows.

Decision quality

Map EIP choices to delivery guarantees, ordering needs, and traceability requirements.

Interview articulation

Explain choices through change cost and scale behavior of complex integrations.

Failure framing

Plan for poison messages, dead-letter strategy, and replay procedures.

Original

Analysis in Telegram

Original book review post on the Book Cube channel.

Перейти на сайт

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions

Authors: Gregor Hohpe, Bobby Woolf
Publisher: Addison-Wesley, 2003
Length: 736 pages

Integration classics: File Transfer, Shared DB, RPC, Messaging. Channels, routing, message transformation.

Original

Application Integration Styles

In Chapter 2, the authors provide an excellent overview of the four main integration styles, analyzing the pros and cons of each approach:

File Transfer

Transferring data through files is a simple but slow approach.

Ease of implementation
Loose coupling
Update delays

Shared Database

Common database for all applications.

Data Consistency
Real-time access
Close coupling

Remote Procedure Invocation

Remote procedure call (RPC, REST, gRPC).

Logic Encapsulation
Synchronous response
Temporal connectedness

Messaging

Messaging is the book's authors' choice.

Asynchrony
Loose coupling
Reliability

Book Structure: Messaging Patterns

The authors examine in detail the patterns for each component of the messaging system:

Messaging Channels

Channels for transmitting messages between systems.

  • Point-to-Point Channel
  • Publish-Subscribe Channel
  • Dead Letter Channel
  • Guaranteed Delivery

Message Construction

Structure and types of messages.

  • Command Message
  • Document Message
  • Event Message
  • Request-Reply

Message Routing

Routing messages between recipients.

  • Content-Based Router
  • Message Filter
  • Splitter / Aggregator
  • Routing Slip

Message Transformation

Convert message format and structure.

  • Envelope Wrapper
  • Content Enricher
  • Content Filter
  • Canonical Data Model

Messaging Endpoints

Endpoints are components that connect applications to the messaging system.

  • Messaging Gateway
  • Transactional Client
  • Polling Consumer
  • Event-Driven Consumer
  • Competing Consumers
  • Message Dispatcher

Workshops and system management

3 workshops

The book includes practical examples of creating simple systems using the patterns discussed.

Chapter 13: Real Case

The highlight of the book is a detailed analysis of the design of a real bond trading system.

System management issues

A separate chapter is devoted to testing and debugging messaging systems - critical aspects that are often overlooked during design.

Application to System Design Interview

When to use EIP patterns

  • Designing event-driven architecture
  • Integrating microservices through queues
  • Asynchronous processing of orders and payments
  • Notification systems, real-time updates

Key interview patterns

  • Pub/Sub for fan-out scenarios
  • Dead Letter Queue for error handling
  • Competing Consumers for scaling
  • Saga for distributed transactions

Recommendation: Despite the age of the book, EIP patterns underlie modern solutions: Kafka, RabbitMQ, AWS SQS/SNS, Azure Service Bus. Knowing these patterns is critical to designing scalable asynchronous interview systems.

Related chapters

Where to find the book

Enable tracking in Settings