Samiksha Jaiswal (Editor)

Enterprise Integration Patterns

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Language
  
English

Originally published
  
January 2004

ISBN
  
978-0321200686

Author
  
Gregor Hohpe

Enterprise Integration Patterns t2gstaticcomimagesqtbnANd9GcRTtIF3gttRt0MWE8

Series
  
Martin Fowler Signature Series

Subject
  
Enterprise integration pattern

Genres
  
Non-fiction, Software development

Similar
  
Patterns of Enterprise Applicatio, Design Patterns: Elements, Camel in Action, Domain‑driven design, Refactoring

Applications of enterprise integration patterns to near real time radar data processing


Enterprise Integration Patterns is a book by Gregor Hohpe and Bobby Woolf and describes 65 patterns for the use of enterprise application integration and message-oriented middleware in the form of a pattern language.

Contents

The Integration (Messaging) Pattern Language

The pattern language presented in the book consists of 65 patterns structured into 9 categories, which largely follow the flow of a message from one system to the next through channels, routing, and transformations. The book includes an icon-based pattern language, sometimes nicknamed "GregorGrams" after one of the authors. Excerpts from the book (short pattern descriptions) are available on the supporting website (see External Links).

Integration Styles and Types

The book distinguishes four top-level alternatives for integration:

  1. File Transfer
  2. Shared Database
  3. Remote Procedure Invocation
  4. Messaging

The following integration types are introduced:

  • Information portal
  • Data Replication
  • Shared Business Function
  • Service Oriented Architecture
  • Distributed Business Process
  • Business-to-Business Integration
  • Tightly Coupled Interaction vs. Loosely Coupled Interaction
  • Messaging

  • Message Channel
  • Message
  • Pipes and Filters
  • Message Router
  • Message Translator
  • Message Endpoint
  • Message Channel

  • Point-to-Point Channel
  • Publish-Subscribe Channel
  • Datatype Channel
  • Invalid Message Channel
  • Dead Letter Channel
  • Guaranteed Delivery
  • Channel Adapter
  • Messaging Bridge
  • Message Bus
  • Message Construction

  • Command Message
  • Document Message
  • Event Message
  • Request-Reply
  • Return Address
  • Correlation Identifier
  • Message Sequence
  • Message Expiration
  • Format Indicator
  • Message Router

  • Content-Based Router
  • Message Filter
  • Dynamic Router
  • Recipient List
  • Splitter
  • Aggregator
  • Resequencer
  • Composed Message Processor
  • Scatter-Gather
  • Routing Slip
  • Process Manager
  • Message Broker
  • Message Transformation

  • Envelope Wrapper
  • Content Enricher
  • Content Filter
  • Claim Check
  • Normalizer
  • Canonical Data Model
  • Message Endpoint

  • Messaging Gateway
  • Messaging Mapper
  • Transactional Client
  • Polling Consumer
  • Event-Driven Consumer
  • Competing Consumers
  • Message Dispatcher
  • Selective Consumer
  • Durable Subscriber
  • Idempotent Receiver
  • Service Activator
  • System Management

  • Control Bus
  • Detour
  • Wire Tap
  • Message History
  • Message Store
  • Smart Proxy
  • Test Message
  • Channel Purger
  • The pattern language continues to be relevant as of today, for instance in cloud application development and integration, and in the internet of things. In 2015, the two book authors reunited - for the first time first time since the publication of the book - for a retrospective and interview in IEEE Software

    Implementation

    Enterprise Integration Patterns are implemented in many open source ESBs, including Talend, Spring Integration, WSO2 ESB, Apache Camel, Red Hat JBoss Fuse, Mule ESB or Guaraná DSL.

    References

    Enterprise Integration Patterns Wikipedia