摘要 |
A distributed computing system with an improved architecture and methodology which is capable of handling a wide range of dynamic groups of services where the makeup of the groups can be determined and changed while the application is running. This is mainly accomplished through a group proxy, which is generated at run time, and which handles interactions with groups of services on behalf of one or more clients. The group proxy consists of a group logic shell which contains all the group-aware logic, and a service proxy for each service in the group which contains the necessary logic to interact with the particular service. A grouping agent is also described which provides the group-aware logic for each service that participates in a group, as well as a group service which generates and updates the group proxy. The group service dynamically creates the group proxies for each group by adding the appropriate service proxies to a group logic shell and then registers the group proxies with a look-up service for use by clients. In the preferred embodiment of the invention, all the group-aware logic for a distributed computing application is provided in separate code modules, namely the group proxy, group service and grouping agent, thus relieving clients and services from providing this logic.
|