Questions tagged [esb]

An enterprise service bus (ESB) is a software architecture construct which provides fundamental services for complex architectures via an event-driven and standards-based messaging engine (the bus). Developers typically implement an ESB using technologies found in a category of middleware infrastructure products, usually based on recognized standards.

An enterprise service bus (ESB) is software infrastructure that enables service-oriented architecture (SOA) by acting as an intermediary layer of middleware through which a set of reusable business services are made widely available.

An ESB is a message oriented middleware (MOM) plus additional services, one of which could be a Message Broker. So an ESB can include a Message Broker as one of it's components. A Bus consists of more than one processes, otherwise I wouldn't call it a 'bus'. The nature of a bus is that there are multiple components serving different tasks, each one communicating over a MOM and adhering to some form of 'common data format'. A bus would consist of: applications sending data to the MOM, database adapters, Message Brokers, MOM bridges, etc.

The Enterprise Service Bus provides one of the keys to helping you achieve the goals of a service oriented architecture. It provides a flexible connectivity infrastructure for integrating applications and services, enabling composite applications to be built as a loose coupling of independent services. It is at the heart of your service oriented architecture, reducing the number, size, and complexity of interfaces and connections that must be defined and maintained.

There are four primary functions provided by an enterprise service bus:

  • Its first responsibility is the ROUTING of messages. Rather than the service requestor calling directly to the service provider, the requestor sends the request to the ESB, and the ESB then is responsible for making the call on the service provider.
  • Secondly, it is responsible for CONVERTING transport protocols. If the service requestor called directly to the service provider, they would need to use the same transport protocol. The ESB enables the service requestor to use one transport protocol while the service provider uses another.
  • Thirdly, it is responsible for TRANSFORMING message formats. By eliminating the direct call from the service requestor to the service provider the ESB is capable of modifying the message so that the interfaces used by the requestor and provider do not have to be identical.
  • Lastly, the ESB is capable of HANDLING business events from disparate sources. Therefore, the same service provider responsible for performing some particular business function can be indirectly invoked from a variety of application contexts.

Resources:

Some ESB tags in StackOverFlow :

1984 questions
8
votes
5 answers

How to Implement Loose Coupling with a SOA Architecture

I've been doing a lot of research lately about SOA and ESB's etc. I'm working on redesigning some legacy systems at work now and would like to build it with more of a SOA architecture than it currently has. We use these services in about 5 of our…
user300183
8
votes
5 answers

what exactly a inbound end point and outbound end point in mule?

I have been trying to figure out, what exactly a inbound end point and outbound end point. For me it is bit of an eluding to understand. what are exactly inbound and outbound endpoints for/do in mule flow? if a flow wants send message which endpoint…
kuhajeyan
  • 10,727
  • 10
  • 46
  • 71
8
votes
2 answers

Apache Camel onException

I want to catch all Exception from routes. I add this OnExeption : onException(Exception.class).process(new MyFunctionFailureHandler()).stop(); Then, I create the class MyFunctionFailureHandler. public class MyFunctionFailureHandler implements…
Kikou
  • 1,895
  • 4
  • 20
  • 32
8
votes
2 answers

Apache camel to aggregate multiple REST service responses

I m new to Camel and wondering how I can implement below mentioned use case using Camel, We have a REST web service and lets say it has two service operations callA and callB. Now we have ESB layer in the front that intercepts the client requests…
Rishi
  • 5,869
  • 7
  • 34
  • 45
7
votes
1 answer

What is difference between a Message Queue and ESB?

I was just reading about Enterprise Service Bus and trying to figure out how to implement it. However, the more I read about it, my conclusion was that it is just a glorified message queue. I read about it here: What is an ESB and what is it good…
Lost
  • 12,007
  • 32
  • 121
  • 193
7
votes
1 answer

Apache Camel: Unable to get the Exception Body

Whenever there is normal flow in my Camel Routes I am able to get the body in the next component. But whenever there is an exception(Http 401 or 500) I am unable to get the exception body. I just get a java exception in my server logs. I have also…
rohan
  • 166
  • 1
  • 11
7
votes
2 answers

Difference between Webservice and Enterprise Service Bus

I want to know the difference between Webservice and Enterprise Service Bus (Ex- Mule). I didn't get much information from the internet when I searched for it. According to my understanding Enterprise Service Bus is used for integrating Service so…
Lolly
  • 34,250
  • 42
  • 115
  • 150
7
votes
5 answers

Difference between WebLogic Integration and Oracle Service Bus?

I have limited knowledge of Java-based technologies, and for business enforced reasons, I may need to decide whether WebLogic Integration (WLI) or Oracle Service Bus (OSB) is the better choice for integrating a small number of standalone systems…
Jeremy
  • 3,484
  • 3
  • 22
  • 25
7
votes
3 answers

Difference between JBoss ESB server and JBoss Fuse

What is the difference between JBoss ESB Server (which is available here: http://jbossesb.jboss.org/downloads/) and JBoss Fuse (http://www.jboss.org/products/fuse/download/) How are both functionally different?
iwekesi
  • 2,228
  • 4
  • 19
  • 29
7
votes
3 answers

How to Solve Message payload is of type: BufferInputStream Exception in Mule

I am already transforming to byte array but i constantly get this error : ERROR 2015-02-25 11:12:30,517 [[ESR].HTTP_Request_Listener.worker.01] org.mule.exception.DefaultMessagingExceptionStrategy:…
MoienGK
  • 4,544
  • 11
  • 58
  • 92
7
votes
2 answers

How to use transactions and rollbacks in an SOA architecture

I'm currently working on a SOA project. I have to develop several processing chains, that is to say a web-services that chain web-services inside an ESB in Java. Since every web-service to chain can throw different exception, I thought about using…
qbisson
  • 185
  • 2
  • 12
7
votes
1 answer

Apache Camel merge two files from different routes

Here's what I am trying to do. I have to read two files that has this content Dinesh To do this I created a route
Dinesh Arora
  • 2,115
  • 3
  • 24
  • 30
7
votes
2 answers

Getting Started with Jboss Fuse ESB

I am new to ESB and trying to understand ESB concepts and real-world use cases. I dug into few of the open-source ESB products, seems like Apache Camel is the most famous one [being from Apache family]. I found out that, majority people use Jboss…
RaceBase
  • 18,428
  • 47
  • 141
  • 202
7
votes
2 answers

wso2 ESB : Split / Gather Pattern - Single Response

This is not a question but rather an answer. I am quite new to wso2 ESB and wanted to make a test run implementing the split/gather EIP as part of a POC. I followed the examples I found and immediately got a working config that returned a single…
dreamer
  • 71
  • 1
  • 2
7
votes
2 answers

Which Camel construct is suited for transforming?

Apache Camel offers several ways of performing data transforms: its concept of the Transform EIP, custom DataFormats, as well as its allowance for custom Type Converters. I have a situation where I need to do a very complex transform from inside a…
user1768830