Scalability

ESB is designed to process thousands of messages simultaneously and has proven to do so in production environments.

The ESB logic is designed to utilize all processors on the server on the one hand. On the other hand, it uses an asynchronous paradigm to boost each thread speed to maximum. Since the nature of ESB is communication – it is a more IO-bound application rather than CPU-bound, therefore the asynch model fits perfectly.

ESB can scale horizontally and vertically. Horizontally by adding servers. All 3 components (Logic, RabbitMQ and ELK) are extensible. ESB Logic is extensible by distributing tasks among different servers. Another method to extend ESB Logic is by using an external load balancer. RabbitMQ and ELK have a clustering model allowing to add cluster members that share the load.