aspose file tools*
The moose likes EJB and other Java EE Technologies and the fly likes What is ESB? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "What is ESB?" Watch "What is ESB?" New topic
Author

What is ESB?

Tina Ma
Ranch Hand

Joined: Nov 29, 2007
Posts: 198
Is ESB something like a middle tier Enterprise Application? What does it exactly stand for?


Tina
SCJP 1.4, SCWCD 1.4
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
ESB is the acronymn for enterprise service bus
Tina Ma
Ranch Hand

Joined: Nov 29, 2007
Posts: 198
What expertise is required to implement an ESB?
Paul Sturrock
Bartender

Joined: Apr 14, 2004
Posts: 10336

You wouldn't implement one normally. Implementations exist that you can use, for example IBM's MQSeries.


JavaRanch FAQ HowToAskQuestionsOnJavaRanch
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
What expertise is required to implement an ESB?


If you wanted to write the code for an enterprise service bus, you would need to deeply understand distributed computing, messaging, concepts of service-oriented analysis, service-oriented design, service-oriented architecture, service-oriented infrastructure, web services and software security.

Implementations exist that you can use, for example IBM's MQSeries.


MQ Series is not an enterprise service bus. It is software for messaging and queuing. MQ Series can be used to build a proprietary enterprise service bus. However, there is much more to an enterprise service bus than just messaging and queuing.

OpenESB is an implementation of an enterprise service bus.


IBM WebSphere Message Broker is another implementation of an enterprise service bus.
[ July 29, 2008: Message edited by: James Clark ]
Jos Dirksen
author
Greenhorn

Joined: Jun 30, 2003
Posts: 15
Working with ESBs isn't really that hard anymore. With ESBs such as Mule and ServiceMix working with ESBs has become really simple. If you want custom functionality both these ESBs support writing services in standard java.

If you've already got lots of legacy systems (opensource) ESBs provide lots of connectivity options (HTTP / JMS / Mail / etc) to connect to those ESBs.

Some ESBs though are easier to work with then others. OpenESB was already mentioned, and this a JBI compliant ESB (just as ServiceMix). JBI is a JCP standard which defines how integration components communicate with each other. But working with JBI based ESBs however does require some knowledge of how JBI works. Mule on the other hand use a more 'pragmatic' or proprietary approach, which makes it very easy to work with.
Tina Ma
Ranch Hand

Joined: Nov 29, 2007
Posts: 198
So is ESB like an application to transport data between two points securely?
Jos Dirksen
author
Greenhorn

Joined: Jun 30, 2003
Posts: 15
Transporting data is indeed one of the features of an ESB. More important though are an ESB's routing, transformation and connectivity features.

And it's not just between two points, you can also split up messages, send them to multiple targets, aggregate them back. You can do this based on content, type, format etc.

To speak in buzzwords you can use an ESB as the base of your service oriented architecture.
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
How does an application find services? In one type of service-oriented design, a way to find services is to connect to a service bus. All of the services in an enterprise can be found on the bus. When an application finds the services, it can then use them. The enterprise service bus then provides the mechanism to locate services.

Service-oriented information systems can have a service bus, or they can use some other method of locating services.
Jos Dirksen
author
Greenhorn

Joined: Jun 30, 2003
Posts: 15
Usually when working with larger systems or creating an enterprise wide service architecture, you'll also have some sort of a service registry where clients can search for services.

With the found information they can then invoke the service using it's definition. An added advantage of this is that it provides a nice point to start with the governance of service. For instance define when a service is available, what service levels are supported, how you're billed for using this service etc.

But SOA governance is a whole other discussion, a very interesting one though.
amit taneja
Ranch Hand

Joined: Mar 14, 2003
Posts: 810
Hi,
could you please put more highlight on SOA governance and how registry are implemented ?

i mean is this the case that if i put my wsdl file in registry and put metadata about it and other service just search mine webservice through key words ... so other can dynamically search my service and genarate stubs to communicate to my webservice or the calling service has to manually write some part of the code and mannually generate subs using axis or some other apis ?
and then call it ?

how service in registory can be dynmically invoded withuout any human intervention ?

how the security could be implemented in that case ?

can registry is only for webservise or other ESB also ??

... and please put some hightlight about SOA governance ?
would love to know in detail about SOA governance ? how it is implemented and some practicle case study link/reference so it can be understood very clearly


soo many question but please answer all

regards
amit


Thanks and Regards, Amit Taneja
Dinuka Arsakularatne
Ranch Hand

Joined: Aug 12, 2006
Posts: 198
I was checking out some esb's as well and i found this esb be to be quite useful as it is based on the apache synapse esb which is very fast and light weight but also gives a really good admin UI which allows users to easily configue the ESB according to their needs...


if who i am is what i have, and what i have is lost, then who am i?<br /> <br />SCJP 5.0<br />SCWCD 1.4<br />SCBCD preparing
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: What is ESB?