Enterprise Service Bus Vs Hub-and-Spoke
The nature of the ESB is distributed; ESB is more scalable than the hub-and-spoke architecture. With ESB the ability to deploy separate integration services, scaling up and scaling out becomes easier.
An ESB is based on open standards. EAI/hub-and-spoke solutions are generally based on proprietary standards.
Advantages of the ESB architecture over the hub-and-spoke architecture are:
Hub and Spoke
- Centralized architecture.
- Central point for availing services like transformation, routing and transaction management.
- HUB (message broker) is a monolithic piece of software.
- Capabilities of the HUB cannot be used as pluggable components in another HUB.
- Services provided by the HUB and the interfacing between these services is not standard based and is usually propriety standards driven, leading to a risk of vendor locking.
- The hub, being a monolithic piece of software can be used only in a ‘all or nothing’ mode.
- Complicated operations, such as package sorting and accounting, can be carried out at the hub, rather than at every node.
- Spokes are simple, and new ones can be created easily.
- Scheduling is convenient for them since there are few routes, with frequent service.
Enterprise Service Bus(ESB)
- Distributed and more scalable architecture.
- Central point for availing services like transformation, routing and transaction management.
- ESB provided services are themselves distributed in the sense that different components come and play their role in providing the infrastructure services promised by the ESB.
- Specific capabilities of an ESB can be plugged into other ESBs to allow the user to get the benefit of mix and match of services.
- Services provided by ESB, deployment and installation of these services and interfacing between these services is standard based.
- ESB user can choose which services need to installed and used which services they want to leave per instance of the ESB.
- Faster and cheaper accommodation of existing systems.
- Increased flexibility; easier to change as requirements change.
- Standards-based.
- Scales from point solutions to enterprise-wide deployment (distributed bus).
- Predefined ready-for-use service types.
- More configuration rather than integration coding.
- No central rules engine, no central broker.
references:
http://en.wikipedia.org/wiki/Enterprise_service_bus
http://software.intel.com/en-us/articles/soa-esb-what-is-all-this/
http://dotnet.sys-con.com/node/121831?page=0,0