When is the use of an Enterprise Service Bus (ESB) recommended?

Asked

Viewed 6,760 times

5

I am at the beginning of the development of a system that provides communication with some other systems through Web Services. Now our system will be the provider of services, or consumer of external services, always through Web Services.

The use of a service bus (Enterprise Service Bus - ESB) is indicated in this case?

3 answers

5


These are some situations for which a service bus is a solution recommended:

  • when three or more applications need to be integrated in an orchestrated way
  • when the services that will be incorporated are from external providers over which there is no control
  • when it is necessary to monitor the service level of external providers
  • when changes occur in service contracts (the ESB is able to provide a standard treatment for messages while adjustments are made to suit the new contract)
  • when the architecture provides for the reception, processing and production of messages, especially when there is a need for a transactional context for messages
  • when there is a need to communicate with components and adapters to access legacy applications, which need to be accessed in a standard way

On the other hand, these are some situations for which the use of bus service is not recommended:

  • when integrations are point-to-point, with no need for orchestration
  • when only one protocol type is used, for example only SOAP
  • when the volume of data to be sent by the bus is very large (in this case consider ETL tools and data replication between the databases involved)
  • when there are long-term business processes, best implemented with BPEL or BPMN ferrramentations

For the specific case mentioned, it seems that the use of a service bus is an unnecessary overhead for the project.

Sources:

Enterprise Service Bus

Don’t use an ESB unless you Absolutely, Positively need one, Mule CTO Warns

0

You should use a bus when you see the need for communication between systems where one integration depends on another.

For example: You call a service a middleware, and that middleware calls other services from other middleware to join together and return and give your answer.

You see the need for orchestration there ? it is at this time that you must resort to an ESB, by the abstraction of layers and orchestration.

0

Apparently you do not need to use a Service Bus, since you have opted for communication through Web Services. In any case, to get an idea of how it works and to do a more specific test, create a Service Bus in Azure and configure it. It’s quite simple.

Inside Azure you can find the Queues Service Bus (allows one-way communication); the Service Bus Topics/Subscriptions (allows one-way communication using subscriptions); the Service Bus Relay (provides two-way communication); and the Event Hubs (provides event entry and telemetry to the cloud).

For more information visit the link: http://talkitbr.com/2015/06/19/azure-service-bus/

Browser other questions tagged

You are not signed in. Login or sign up in order to post.