Question

With an abundance of frameworks for Java Enterprise Service Bus(OpenESB, ServiceMix, Apache Synapse, ...), which one should be selected for new projects? What are the pros and cons for each one? How well have they worked for you?

Was it helpful?

Solution

Personally, I'm not a fan of ESB. Your first step should be to have a portfolio of services available that tile the space of the business problem you're trying to solve. If you've partitioned the problem well, I'd bet that an ESB isn't helpful.

They tend to become a single point of failure that forces too much knowledge about the inner workings of the services (e.g., compensating operations to manage transactions) outside the services.

"Architects" tend to love them because they think they can solve problems with tools.

Don't end up creating an Egregious Spaghetti Box

But if you must, I'd recommend Spring for its integration with Mule.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top