Wednesday, August 29, 2007

[Arch] What is an ESB?

Well, good question. Dealing with a lot of middleware technologies in the last month, I was trying to get a clean description about what an ESB actually is. What is e.g., the conceptional difference between Mule and Service Mix (not to mention about the commercial products like Tibco and Sonic)?

You can actually get an impression, when you read what they write about the other projects respectively, e.g.:
We even get some nice side-blows like: "so if you already have an investment in some Mule configuration or code, you can reuse it inside ServiceMix along with any other JBI components". Good to know, that I can operate Mule within Service Mix, whatever might be the reasion I would want to do that. If we still do not know what an ESB is, and what we would use it for, I recommend the talk of Mark Richards:

Mark Richards poses the question: is it a
  • Pattern?
  • Product?
  • Architecture Component?
  • Hardware component?
Well, maybe all of that, check out his nice video presentation. In this talk he gives some general ideas and also talks about the two mentioned Open Source competitors, SOA, decoupling and all the other nice buzzwords.

4 comments:

Heinz Roth said...

Next question: What is an Internet Service Bus?

Of course it's an ESB made available to everyone via internet by Microsoft (http://labs.biztalk.net/Overview.aspx) . In their opinion, companies using it only have to change a few config files to start and interact (as shown in their video) ...

Alexander Schatten said...

I dont really get the point why you would have to give it a new name...

I mean: an ESB is supporting a set of protocols starting from CICS to http: I need no special product to use the http (for example) or the webservice interface on the internet.

This is actually only a matter of configuration, or do I miss some point here?

Heinz Roth said...

No, I totally agree with you. I can't see anything noteworthy about this concept besides being a publicly accessible ESB (which you can use to test if you don't want to set up your own).

Kind of reminds me of those public UDDI registries from Microsoft and IBM some years ago (which have been shut down: http://www.webservicessummit.com/News/UDDI2006.htm)

Markus Demolsky said...

At present I investigate a lot of time about ESB and Workflow Management systems and about their concepts. Especially Workflow management systems, where a lot of different systems must be integrated (e.g. SAP, accounting systems, like BMD, and so on) in a coordinated way. At this point an ESB makes sense and helps a lot to get a clean architecture in your system. Many people thing when they have an ESB they realized a Service Oriented Architecture. About this topic I found an interesting article: http://www.ibm.com/developerworks/webservices/library/ws-soa-esbarch/index.html?ca=drs-