next up previous
Next: Ares Up: Dynamic Scalable Distributed Face Previous: Components of Apollo

Hermes

Hermes - the messenger of Gods, though in this scenario plays a role of the ``police officer'' directing traffic (see Fig: 1). Hermes acts as dynamic centralized information portal. Since the system is distributed many systems can exist in a Hermes pool and provide information to its clients. The information is queried directly from the other three components: Demeter, Nemesis and Mors at every predefined amount of time. This allows for near real-time acquisition of load information, number of clients using the component, the maximum number of connections allowed and of course the address of the component.

To have such a highly dynamic system, capable of detecting changes in such dynamic computing environment, Hermes must be quite adaptive. Furthermore, Hermes by itself must be scalable too (its part of a distributed system) - therefore there can be many systems in a Hermes component pool. Each of them has the same information about the three other components, though each retrieves the information by itself.

The main purpose of Hermes is to provide information for two components: Ares and Nemesis. Ares requires information about Nemesis and Demeter, while Nemesis requires information about Mors (see Fig: 5). Hermes provides this information - giving the client the least loaded requested component, therefore eliminating bottlenecks and keeping a fairly level load across the systems. When the load on the specific pool of components if fairly high, the solution is to add a system of that component, and the load balance will direct new traffic to that system.

In summary Hermes' solely task is to provide the addresses of the desired components with the least load. Each pool can also perform these tasks indivudually, thus in sense integrating Hermes functionality in their own component. This in result eliminates Hermes, but provides fail-safe redudancy and autonomicity.


next up previous
Next: Ares Up: Dynamic Scalable Distributed Face Previous: Components of Apollo
2002-05-26