EBM Websourcing

construisez votre SOA Open source

Home Products PEtALS What is highly distributed architecture ?

Enterprise service bus (ESB) allows applications which are not compatible to communicate, using standard and agile service calls. When you implement it in a big structure, you can automatize and monitor information transfers, and create processes, between any application across the architecture.

ESB looks like the second generation of EAI (Enterprise Application Integration). That is how it improves it : It adds a high level network layer, based on services. Thoses services are standards, XML based, in order to interoperate between different architectures, and reuse services easily. ESB is more agile, since it does not only translate data, but also redirect it automatically into the right place, without the need to specify an adress.

Central ESB

Applications on a traditionnal ESB are distributed. Doing so, you can call any application, threw a service, without even knowing where this application is hosted. That is because the central server manages everything. It is a bigger job for the server, but it works quite well.

ESB Centralisé
Central architecture

The only problem of this solution is to get a single point of failure, on a busy server : If the server breaks down, every exchange around him stops working.

To counter that risk, and lower server charge, it is current to bound several servers together. That is called clustering. Clustering makes systems a bit more complex, but gives a much better robustness.

Utilisation de clusters
Central architecture, with clusters

Highly distributed ESB

A centralized ESB can distribute information between applications, which is benefic. Why not distributing as well the central server's task ? In a highly distributed architecture, instead of sending information to a server which will translate and manage it, each local machine translates and manages its own data. No central server, no need of clustering. Monitoring and administration can be done by any authorized machine, which checks data transfers on the bus.

Architecture hautement distribuée

Highly distriuted architecture

Even if each machine needs a full ESB to run locally (but with a much lower load), the distributed solution gives several benefits. We explain those benefits here