Decentralized application placement for Web application middleware
First Claim
Patent Images
1. A method for decentralized application resource allocation for a cluster of nodes, the method comprising:
- receiving, at a local node, resource utilization data of applications from a subset of nodes in the node cluster, the local node including a current set of applications executing at the local node;
determining a new set of applications to execute at the local node which optimizes an objective function as computed locally by the local node based, at least in part, on the utilization data;
modifying which applications are executed at the local node according to the new set of executing applications; and
sending from the local node to the subset of nodes in the node cluster application execution changes between the new set of applications and the current set of applications at the local node.
1 Assignment
0 Petitions
Accused Products
Abstract
A decentralized process to ensure the dynamic placement of applications on servers under two types of simultaneous resource requirements, those that are dependent on the loads placed on the applications and those that are independent. The demand (load) for applications changes over time and the goal is to satisfy all the demand while changing the solution (assignment of applications to servers) as little as possible.
-
Citations
21 Claims
-
1. A method for decentralized application resource allocation for a cluster of nodes, the method comprising:
-
receiving, at a local node, resource utilization data of applications from a subset of nodes in the node cluster, the local node including a current set of applications executing at the local node;
determining a new set of applications to execute at the local node which optimizes an objective function as computed locally by the local node based, at least in part, on the utilization data;
modifying which applications are executed at the local node according to the new set of executing applications; and
sending from the local node to the subset of nodes in the node cluster application execution changes between the new set of applications and the current set of applications at the local node. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for decentralized application resource allocation for a cluster of nodes, the system comprising:
-
a processor configured to execute a computer program;
a network interface coupled to the processor and configured to send and receive data over the computer network; and
a storage device embodying the computer program, the computer program including computer executable instructions configured for;
receiving, at a local node, resource utilization data of applications from a-subset of nodes in the node cluster, the local node including a current set of applications executing at the local node;
determining a new set of applications to execute at the local node which optimizes an objective function as computed locally by the local node based, at least in part, on the utilization data;
modifying which applications are executed at the local node according to the new set of executing applications; and
sending from the local node to the subset of nodes in the node cluster application execution changes between the new set of applications and the current set of applications at the local node. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product comprising a tangible media embodying computer program code, the computer program code comprising computer executable instructions configured for:
-
receiving, at a local node, resource utilization data of applications from a subset of nodes in the node cluster, the local node including a current set of applications executing at the local node;
determining a new set of applications to execute at the local node which optimizes an objective function as computed locally by the local node based, at least in part, on the utilization data;
modifying which applications are executed at the local node according to the new set of executing applications; and
sending from the local node to the subset of nodes in the node cluster application execution changes between the new set of applications and the current set of applications at the local node. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification