Skip to main content

How to select an integration solution(ESB) for your enterprise IT

If you are an IT architect responsible for designing your enterprise IT system, you may have already experienced this topic. Modern IT systems consists of so many different systems developed by different vendors with different technology stacks. Even though those are developed independently, those systems should interact with each other to provide a seamless business experience to your stake holders. This is where the challenge of integration comes into the picture. Integrating heterogenous systems is a very complex task and you need to consider so many things before choosing a proper solution. With this blog post, I am going to discuss about the things which you need to consider when choosing an integration solution for your enterprise. I have grabbed some ideas from the following blog post[1] which also describes a similar topic.

[1] http://www.infoq.com/articles/ESB-Integration

Mainly, there are 2 streams of product categories available in the market.


  1. Open source software
  2. Proprietary software
Following table describes the capabilities of these 2 different streams of products with respect to the facts which we need to consider when choosing an integration solution.




Fact to be considered
Open Source
Proprietary



Usability
Easy to install in few minutes
Complex installations sometimes require consultants to install

Supports most operating systems
Good documentation

Easy to play around and explore features
High memory footprint and considerable learning curve

Low memory footprint




Maintainability and Monitoring
Administration and Monitoring capabilities are not up to the level of proprietary solutions
Powerful visual tools for admin and monitoring which are integrated to the solution



Community
Open source community around respective projects 
Less or zero free community

Own community with lot of free information in terms of blogs, articles, tutorials
Buy support and you get access to forums and other information



Enterprise support
Most of the open source companies earn money by providing support
Pay more and get good support

Support is provided by engineers who develop the code (WSO2)
If you pay less, then you have to do most of the things by going through forums

Quick and customer friendly support




Flexibility
Provide customizations pretty quickly
Hard to get features and take more time (even years)

Quick bug fixes
If you pay more, you have a chance of getting earlier



Functionality
May lack some features
Concrete set of features

Always improving and improving quickly
Stable releases with fixed road maps



Extensibility
Easy to extend with clear extension points
Do it yourself or pay more and get new components/products

Your custom code has same privileges as internal code (WSO2)




Connectors
Fully or partially free connectors
Full set of connectors which you need to buy ($$$)

Supports most of the important applications




Costs
Low and decent pricing
More and more. May increase when the project goes on



Licensing
Business friendly (Apache2) and transparent licensing
Complex price list which is hard to understand till you are charged

Pay for what you want 


No hidden fees




Vendors
WSO2, Fuse ESB, Mule ESB, Talend ESB, AdroitLogic ESB, Apache ServiceMix
Oracle ESB, IBM Websphere, Tibco, Microsoft BizTalk, SAP NetWeaver PI, Progress Sonic

According to your requirements and budget, you can go for either open source or proprietary solutions. 

Comments

  1. Thanks for sharing this blog.The article you provided here about"How to select an integration solution(ESB) for your enterprise IT" gives lot of information.
    Mulesoft Online Training
    Mulesoft Training in Hyderabad

    ReplyDelete

Post a Comment

Popular posts from this blog

How to setup an WSO2 API manager distributed setup with a clustered gateway with WSO2 ELB

In this blog post I am going to describe about how to configure a WSO2 API Manager in a distributed setup with a clustered gateway with WSO2 ELB and the WSO2 G-REG for a distributed deployment in your production environment. Before continuing with this post, you need to download the above mentioned products from the WSO2 website. WSO2 APIM - http://wso2.com/products/api-manager/ WSO2 ELB - http://wso2.com/products/elastic-load-balancer/ Understanding the API Manager architecture API Manager uses the following four main components: Publisher Creates and publishes APIs Store Provides a user interface to search, select, and subscribe to APIs Key Manager Used for authentication, security, and key-related operations Gateway Responsible for securing, protecting, managing, and scaling API calls Here is the deployment diagram that we are going to configure. In this setup, you have 5 APIM nodes with 2 gateway...

WSO2 ESB tuning performance with threads

I have written several blog posts explaining the internal behavior of the ESB and the threads created inside ESB. With this post, I am talking about the effect of threads in the WSO2 ESB and how to tune up threads for optimal performance. You can refer [1] and [2] to understand the threads created within the ESB. [1] http://soatutorials.blogspot.com/2015/05/understanding-threads-created-in-wso2.html [2] http://wso2.com/library/articles/2012/03/importance-performance-wso2-esb-handles-nonobvious/ Within this blog post, I am discussing about the "worker threads" which are used for processing the data within the WSO2 ESB. There are 2 types of worker threads created when you start sending the requests to the server 1) Server Worker/Client Worker Threads 2) Mediator Worker (Synapse-Worker) Threads Server Worker/Client Worker Threads These set of threads will be used to process all the requests/responses coming to the ESB server. ServerWorker Threads will be used to pr...

How puppet works in your IT infrstructure

What is Puppet? Puppet is IT automation software that helps system administrators manage infrastructure throughout its lifecycle, from provisioning and configuration to orchestration and reporting. Using Puppet, you can easily automate repetitive tasks, quickly deploy critical applications, and proactively manage change, scaling from 10s of servers to 1000s, on-premise or in the cloud. How the puppet works? It works like this..Puppet agent is a daemon that runs on all the client servers(the servers where you require some configuration, or the servers which are going to be managed using puppet.) All the clients which are to be managed will have puppet agent installed on them, and are called nodes in puppet. Puppet Master: This machine contains all the configuration for different hosts. Puppet master will run as a daemon on this master server. Puppet Agent: This is the daemon that will run on all the servers, which are to be managed using p...