Patent ID: 8825858

Claim:
A system for managing virtual server resources, comprising: a monitoring server having a processor, a non-transitory memory, and a monitoring application stored in the non-transitory memory, that, when executed by the processor, monitors a first virtual server application of a plurality of virtual server applications executing on a physical server having a physical processor with a fixed processing capacity, wherein the first virtual server application is guaranteed a first percentage of the fixed processing capacity allocated as a first entitlement of a plurality of entitlements, monitors a second virtual server application of the plurality of virtual server applications executing on the physical server, wherein the second virtual server application is guaranteed a second percentage of the fixed processing capacity allocated as a second entitlement of the plurality of entitlements, determines a remaining processing capacity of the physical processor based on the plurality of entitlements, wherein the remaining processing capacity includes at least one of a portion of an unallocated processing capacity of the physical processor and a temporary allocation of processing capacity at least partially allocated to one of the plurality of virtual server applications based on need, monitors usage of the physical processor, monitors usage of a first virtual processor associated with the first virtual server application, receives a request from a client device for a current utilization level of the first virtual processor, evaluates a load processing level of the second virtual server application, based on the evaluation of the load processing level of the second virtual server application, determines a portion of the remaining processing capacity of the physical processor, wherein the portion of the remaining processing capacity varies inversely with the load processing level of the second virtual server application, determines a potential processing capacity for the first virtual processor that includes a total of the first entitlement and the portion of the remaining processing capacity of the physical processor, determines the current utilization level of the first virtual processor, wherein the current utilization level comprises current usage of the first virtual processor divided by the potential processing capacity, and reports the current utilization level of the first virtual processor to the client device.