Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups
First Claim
1. A method in a computing node, comprising:
- determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and
executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute.
1 Assignment
0 Petitions
Accused Products
Abstract
A network provides distributed client services based on participation in respective resource groups by computing nodes, each resource group including a corresponding resource requirement for any computing node that joins the corresponding resource group for execution of the corresponding distributed client service. Each computing node, in response to determining its corresponding available node capacity, is configured for selectively creating and joining at least one new resource group for execution of a corresponding distributed client service having a corresponding resource requirement, and/or selectively joining at least one of the available resource groups, based on the corresponding available node capacity satisfying the corresponding resource requirement. Each distributed client service also includes service attributes that define parameters for execution of the distributed client service, and data attributes that define the attributes required for data to be used in the distributed client service.
161 Citations
30 Claims
-
1. A method in a computing node, comprising:
-
determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and
executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method in a network, the method comprising:
-
providing resource groups, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within the network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
in each computing node of the network;
(1) determining a corresponding available node capacity relative to any of said resource groups having been joined by the computing node, (2) selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity, and (3) executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute; and
connecting a client, of the distributed client service, to the distributed client service via one of the computing nodes having joined the corresponding resource group;
wherein each of the computing nodes having joined said at least one resource group perform the executing of the distributed client service based on replicating the corresponding service data among each of the other computing nodes belonging to the corresponding at least one resource group, according to the corresponding service attribute and the corresponding data attribute. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computing node comprising:
-
a resource monitor configured for determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
a resource group arbitration module configured for selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and
computing node resources configured for executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A network comprising:
-
a plurality of computing nodes configured for selectively joining resource groups, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
each computing node configured for;
(1) determining a corresponding available node capacity relative to any of said resource groups having been joined by the computing node, (2) selectively joining at least one of the resource groups based on the corresponding resource requirement of the second resource group being less than the available node capacity, and (3) executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the respective resource group attribute;
wherein one of the computing nodes that executes distributed client service, in response to receiving a request from a client of the distributed client service, performs the distributed client service for the client, each of the computing nodes having joined said at least one resource group perform the executing of the distributed client service based on replicating the corresponding service data among each of the other computing nodes belonging to the corresponding at least one resource group, according to the corresponding service attribute and the corresponding data attribute. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A computing node comprising:
-
means for determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client;
means for selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and
means for executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. - View Dependent Claims (26, 27, 28, 29, 30)
-
Specification