Chapter 9. Enterprise integration and ESBs

 

This chapter covers

  • Common features of an ESB
  • Introducing Apache Synapse
  • Service mediation with Synapse

An enterprise service bus (ESB) is a strange bird. The term first burst upon the scene in 2002, followed by a flurry of products that proclaimed themselves as ESBs. However, what constitutes an ESB has always been a matter of debate. At a minimum, most would agree that an ESB is an enterprise messaging system that primarily relies on the exchange of XML messages. These messages, in turn, can be intelligently routed and transformed through a decentralized architecture.

The emergence of ESBs has roughly coincided with the increasing standardization of web service and messaging protocols such as Java Messaging System (JMS) and SOAP. Indeed, the initial group of vendors who released ESBs tended to be those who had existing JMS-based middleware offerings, and included the likes of Sonic Software (now Progress) and Fiorano. Soon thereafter, open source ESBs began to appear, with Mule and ServiceMix leading the charge. Later, other open source ESBs emerged, such as Apache Synapse, JBoss ESB, Sun’s OpenESB, and Apache Camel (though Camel eschews positioning itself as an ESB).

9.1. The relationship between ESB and SOA

9.2. Historical foundations of ESB

9.3. Introducing Apache Synapse

9.4. Basic Apache Synapse message and service mediation

9.5. Summary