Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News


2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
SYS-CON.TV
Top Links You Must Click On


ESB Pattern: What Is the ESB?
An ESB can mean vastly different things to different people

ESB products emerged around 2002 from message-oriented middleware (MOM). Faced with market domination by IBM, MOM vendors were the first to jumpstart the ESB concept with the aim of developing a unique selling proposition. They added Web service and EAI capabilities on top of existing message broker capabilities, and with analyst support coined the term ESB. ESB was positioned as a low-cost alternative to EAI and panacea for all integration needs - tell-tale signs of hype. Unfortunately, the standards community was too late to get on the bandwagon. In the absence of standards guidance and the lack of a clear definition, each vendor interpreted ESB to its advantage. As a result, comparing ESBs is like comparing apples and oranges. No two products are compatible today with severe consequences (in terms of vendor lock-in) for end users. SCA promises alleviation here, and market forces play in the favor of users too, with significant consolidation, convergence and commoditization taking place.

Pattern or Product?
An ESB can mean vastly different things to different people, and given the ESB market, most people think of ESB in terms of an ESB product with which they are familiar. The essence of an ESB can be much more easily grasped by talking about the ESB as a pattern: the pattern of applying an intermediate proxy to service communication. The ESB pattern is about performing integration tasks and adding value to client-service communication in an SOA - all completely transparent to the participants. As described in SOA Design Patterns, the ESB is a compound pattern that pulls together many enablement and enforcement capabilities that come in handy to the SOA practitioner (see figure below). Reliable Messaging, Message Manipulation, Data Format and Data Model Transformation as well as Protocol Bridging are just some sub-pattern examples under the ESB umbrella. These are all enablement aspects where the ESB allows communication between endpoints not possible otherwise. The ESB can also restrict communication and enforce policies relating to security (such as authentication and coarse-grain authorization), SLA Monitoring, Message Inspection, Intermediate Validation and Service Governance. Having said that, we treat ESB as a pattern and product type, synonymously.

Modern ESB vs. Traditional ESB
The traditional ESB was positioned as the enterprise integration backbone and as a fundamental building block for an SOA. Pundits touted the ESB as the "last middleware" that would gradually grow; instead of a big-bang replacement, segments would be added to the ESB, and applications added step-by-step until SOA bliss: i.e., every stove-pipe application exposed as a service on the ESB or on-ramped as a client. It was the easy path to SOA - or so it seemed.

However, the vision of a single-vendor, enterprise-wide and infinitely scalable integration backbone remained a pipe dream. Many enterprises soon had two or more ESB products in house that now needed to be integrated somehow; company-wide data models proved elusive.

The modern ESB accepts heterogeneity as a fact of life. It supports and embraces the Domain Inventory pattern. A domain is internally highly cohesive and externally largely autonomous from other domains. The ESB supports domain-internal communication by mapping protocols and connecting via adapters into legacy applications. Inter-domain communication does occur occasionally. The ESB can model the external "cell membrane" of the domain, exposing a select few endpoints to other domains. It can normalize these endpoints in terms of data model, protocol binding and security models, therefore simplifying inter-domain communication. The modern ESB is also lightweight, modular and builds on standards, such as SCA, to avoid vendor lock-in.

Alternatives
One obvious alternative to using an ESB is to not use one. "Smart" endpoints could communicate in peer-to-peer fashion and use a standard protocol for addressing all functional and non-functional capabilities (such as SOAP and WS*). All endpoints must then support the same data model and provide lots of capabilities. Consider reliable messaging: trapped messages, persistence, redeliveries, queue sizes, dead letter queues, etc., are just some aspects that must be controlled and monitored in a decentralized fashion. And this is just for the reliable messaging capability! David Chappell coined the term "application servers everywhere" and lamented the operational overheads associated with this approach. While smart endpoints can work if there are few of them, they can lead to uncontrollable service sprawl and spaghetti-connections in the long run. Malicious and invalid payloads can only be detected by the endpoint itself in this scheme - rarely a best practice and something discouraged by the Multi-layer Security pattern.

Another alternative is the provision of standalone infrastructure services. Integration capabilities are then implemented as and when needed (for example with a message broker). No investment in an ESB is necessary and no unused capabilities exist. When further requirements come up (such as transformation, protocol bridging, adapters, etc.) they can be provisioned with additional standalone infrastructure services. Again, such an approach can be very practicable in a small service portfolio. For larger deployments the installation, configuration and operation of the various standalone infrastructure services can become challenging. Frequently you want to combine various integration capabilities. The ESB can do so declaratively using the Microflow pattern - various integration aspects can be arranged, combined and modified in a very agile manner. Microflows are performant because of internal optimization (not every capability is a first-class service invocation). From a maintenance, agility and performance point of view, standalone infrastructure services therefore draw the short straw.

•   •   •

The SOA Pattern of the Week series is comprised of original content and insights provided to you courtesy of the authors and contributors of the SOAPatterns.org community site and the book "SOA Design Patterns" (Thomas Erl et al., ISBN: 0136135161, Prentice Hall, 2009), the latest title in the Prentice Hall Service-Oriented Computing Series from Thomas Erl (www.soabooks.com).

About Thomas Rischbeck
Dr. Thomas Rischbeck is an IT architect and business developer with [ipt], a local SOA consulting boutique with a Java technology focus (see Gartner's Guide to SOA Consulting). He has a track record of successful SOA introduction and delivery projects with a number of Swiss blue-chip clients. He specializes in SOA reference architectures, SOA design patterns and SOA security. Prior to joining [ipt] Thomas worked as an architect with Arjuna Technologies and Hewlett Packard Middleware Labs where he gained extensive experience in Web Services architecture and development.

Thomas holds a PhD in Parallel Computing from the University of Newcastle upon Tyne. He engages with the world-wide SOA community, is a frequent speaker and book author (co-author of "SOA Design Patterns" and "Modern ESB Architecture for SOA" within the Prentice Hall SOA Series).

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Enterprise Open Source Magazine Latest Stories . . .
Apache Deltacloud, the Red Hat-contributed ReSTful API that abstracts differences between clouds so services on any cloud can be managed – provided of course there’s a driver – has graduated from the Apache Foundation’s incubator and is now a full-fledged Top-Level Project (TLP). The...
With Cloud Expo 2012 New York (10th Cloud Expo) just four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technical and st...
AMD said late Tuesday that its chief sales officer Emilio Ghilardi had left the company and that CEO and president Rory Read is going to do his job while a replacement is sought. AMD didn’t say why Ghilardi left but it’s assumed Read wants his own people. Read is relatively new to th...
During the lifespan of M3 (Monitis Monitor Manager) there has always been something lacking – timers. M3 execution procedure was outlined in this previous article. The execution mentioned in the latter was a one-time-execution, whereas server monitoring requires periodic invocati...
Red Hat is putting its bought-in Gluster scale-out NAS storage technology, acquired in October, on the Amazon cloud. It’s styled Red Hat Virtual Storage Appliance for Amazon Web Services and other clouds are supposed to follow in short order.
A new episode of the screencast series is now available at the OpenNebula YouTube Channel. This screencast demonstrates the new easily-customizable self-service portal for cloud consumers. Its aim is to offer a simplified access to shared infrastructure for non-IT end users. The scree...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON Featured Whitepapers
ADS BY GOOGLE