DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Developing and Testing Services Among a Sea of Microservices
  • Component Tests for Spring Cloud Microservices
  • Cloud Migration Checklist
  • Role of Artificial Intelligence for Government

Trending

  • Mocking Kafka for Local Spring Development
  • Event-Driven Pipelines With Apache Pulsar and Go
  • The Invisible OOMKill: Why Your Java Pod Keeps Restarting in Kubernetes
  • Scaling Cloud Data Automation: A Practical Guide to Open Table Formats
  1. DZone
  2. Software Design and Architecture
  3. Microservices
  4. Is Enterprise Service Bus (ESB) Obsolete After Microservices?

Is Enterprise Service Bus (ESB) Obsolete After Microservices?

This article examines the advantages and disadvantages of enterprise service buses and microservices and compare them for business needs.

By 
Ravi Kiran Mallidi user avatar
Ravi Kiran Mallidi
DZone Core CORE ·
Sep. 21, 20 · Analysis
Likes (7)
Comment
Save
Tweet
Share
13.8K Views

Join the DZone community and get the full member experience.

Join For Free

Most organizations are adopting and sunsetting components in their IT infrastructure to meet the business needs. To increase the business values, explore new opportunities in the market requires digital transformation for any organization. While doing digital transformations, several applications are integrating with different integration methodologies and different architecture patterns. Service-Oriented Architecture (SOA) emerged into the industry for more than a decade. Enterprise Service Bus (ESB) became the most popular middleware pattern/integration patterns to solve most of the integration problems in monolithic applications. ESB's main features include message transformation, protocol conversion, service orchestration, and payload enrichment. These features are readily available in all majorities of ESB implementations from different vendors. The features help the solution to be integrated with different types of systems within the Enterprise seamless.

Advantages and disadvantages of ESB’s solutions are described below:

Advantages

Disadvantages

  • Supports different transport protocols like HTTP/S, AMQP, MQTT 
  • Services can be used by any other service regardless of the limitation of networks and technologies 
  • Govern service provides the monitoring and statistics of the services
  • Loosely coupling end services and therefore those can be independently updated without affecting other services
  • Service failures and recovery procedures can be handled 
  • Deployments using CI/CD pipelines
  • Adding additional step/call in the service flow and add a slight delay to the response time. 
  • Additional cost to setup ESB servers, VPNs, and other infrastructure
  • All services are routed through a single place; it will have a single point of failure. 
  • Not having options to scale up a single service in ESB infrastructure. 

 

Nowadays, Microservices Architecture (MSA) is more prevalent than Enterprise Service Bus (ESB). Like ESB, microservices architectures made up of loosely coupled and reusable components. Microservices are an advantage on top of ESB due to deploying on cloud platforms. Teams can code and update code more effectively due to microservices are dedicated cloud-native architecture approach. Microservices use different stacks for different microservices and scale independently, reducing the waste and cost associated with having to scale entire applications as like in ESB architecture. Therefore, compared to ESB, microservices are more fine-grained control and higher scalability.

Advantages and disadvantages of microservices solutions described below:

Advantages

Disadvantages

  • Services are Self-contained and can be scaled independently without effecting other services
  • Built using different technologies and deployed in different platforms as long as communication can be established between each service
  • Business does not require to wait until all teams are complete their developed and Deployment of the microservices.
  • Development and Deployment involve comprehensive CI/CD implementation, and therefore, releases can be planned and executed in parallel.
  • Microservices heavily use features of cloud-based container services to get the maximum advantage of scalability, reliability, and fault tolerance
  • Microservices application success entirely depends on the network communication between them.
  • Difficult to handle scenarios like transaction properties due to the independent feature.
  • It would require an extensive effort to convert legacy it to microservices.

 

Both the ESB and Microservice approaches have their advantages and disadvantages. Choosing the best solution depends on how large and diverse the new application environment. Microservices give added advantages compared to ESB’s due to the support of the latest cloud deployment platforms. Larger, more diverse environments choose ESB solution, whereas Smaller environments, including web and mobile applications, would choose microservices architecture.

Here are factors you must consider when choosing the right solution for an integration architecture:

  • Types of services to be integrated
  • Communication protocols/messaging format support
  • Transport protocol support
  • Routing and transformations
  • Performance and quality of services
  • Cloud capability
  • Security requirements
  • Inter-dependencies of services
  • Team members Skillsets

The requirements should be carefully analyzed with the growth of the organization’s digital transformation strategy in the next 5–10 years. Sometime a hybrid approach would also work if the organization business goals can be achieved.  As per the new trends, the ESB market is to be declining. ESB’s are still using to integrate Legacy applications. The legacy applications are still in the market for the next 5-10 years till the Digital transformation completes. With the rise of microservices, enterprise solutions have below paths to consider.

  • Monolithic Application – Monolithic applications connecting using ESB’s
  • Hybrid ESB - Mix of monolithic applications and cloud-based microservices connected using ESB’s and iPaas (integration Platform as a Service)
  • Microservices Applications – Complete microservices architecture.

Concludes that ESB’s still exists in the next 5-10 years till all the monolithic / legacy applications moved to microservices. If the Enterprise runs smoothly with the existing ESB, there is no point in embracing the microservice revolution. You want to increase business agility, save money and time, then update IT infrastructure with new cloud-native platforms.

Enterprise service bus microservice Web Service

Opinions expressed by DZone contributors are their own.

Related

  • Developing and Testing Services Among a Sea of Microservices
  • Component Tests for Spring Cloud Microservices
  • Cloud Migration Checklist
  • Role of Artificial Intelligence for Government

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook