Intelligent service distributor and controller with real time service calibration
AssigneeEMC IP Holding Company LLC
InventorsShibi Panikkar, Murali Devendranath
Life of this patent
Estimating the term…
Abstract
Described embodiments provide real time load balancing and calibration processes. An aspect includes receiving a request to execute a service, assessing capacity of a target server to execute the service, and setting a threshold for a number of services to be executed on the target server. A further aspect includes assigning a unique identifier of the service to the target server, and based on the threshold and an assessment of a capability of other servers, assigning the service to the server.
Claims6
A method for providing real-time load balancing and calibration processes comprising:
- receiving, by a hardware processor, a request to execute a service;
- assessing, by the hardware processor, capacity of a target server to execute the service;
- setting, by the hardware processor, a threshold for a number of services to be executed on the target server;
- assigning, by the hardware processor, a unique identifier of the service to the target server;
- assessing, by the hardware processor, capability of other servers, and responsive to the assessment of the capability of the other servers, redistributing work among the other servers as a function of a target time of completion for work running on the servers;
- and
- based on the threshold and the assessment of the capability of the other servers, assigning, by the hardware processor, the service to the target server,
- wherein assessing the capacity of the target server includes calibrating the target server by-subjecting the target server to a load of parallel threads and detecting central processing unit (CPU) consumption and random access memory (RAM) consumption that result from the load,
- wherein the threshold includes a maximum number of services and threads to be assigned.
A system for providing real-time load balancing and calibration processes, comprising:
- a hardware memory comprising computer-executable instructions;
- and
- a hardware processor executing the computer-executable instructions, the computer-executable instructions when executed by the hardware processor cause the hardware processor to perform operations comprising:
- receiving a request to execute a service;
- assessing capacity of a target server to execute the service;
- setting a threshold for a number of services to be executed on the target server;
- assigning a unique identifier of the service to the target server;
- assessing capability of other servers, and responsive to the assessment of the capability of the other servers, redistributing work among the other servers as a function of a target time of completion for work running on the servers;
- and
- based on the threshold and the assessment of the capability of the other servers, assigning the service to the target server,
- wherein assessing the capacity of the target server includes calibrating the target server by subjecting the target server to a load of parallel threads and detecting central processing unit (CPU) consumption and random access memory (RAM) consumption that result from the load,
- wherein the threshold includes a maximum number of services and threads to be assigned.
A computer program product embodied on a non-transitory computer readable medium, the computer program product including instructions that, when executed by a hardware computer, causes the hardware computer to perform operations for providing real-time load balancing and calibration processes, the operations comprising:
- receiving a request to execute a service;
- assessing capacity of a target server to execute the service;
- setting a threshold for a number of services to be executed on the target server;
- assigning a unique identifier of the service to the target server;
- assessing capability of other servers, and responsive to the assessment of the capability of the other servers, redistributing work among the other servers as a function of a target time of completion for work running on the servers;
- and
- based on the threshold and the assessment of the capability of the other servers, assigning the service to the target server,
- wherein assessing the capacity of the target server includes calibrating the target server by subjecting the target server to a load of parallel threads and detecting central processing unit (CPU) consumption and random access memory (RAM) consumption that result from the load,
- wherein the threshold includes a maximum number of services and threads to be assigned.
Dependencies are inferred from the claim text.