Patent ID: 7739418

Claim:
A method of managing resource usage comprising: pushing commands indicating accesses of at least one resource onto at least one resource queue; monitoring queue depth in the at least one resource queue for a predetermined level of resource consumption; preventing issue of subsequent commands from a client of at least one client to a server of at least one server in response to a command from the client to the server that increases resource consumption to the predetermined level; identifying the client and the server for which the command increases resource consumption to the predetermined level as a client/server combination identifier; pushing the client/server combination identifier onto a waiting queue associated with a resource for which the resource consumption is increased to the predetermined level, the waiting queue for queuing a plurality of client/server combination identifiers; detecting a decline in consumption of a resource of the at least one resource; popping a client/server combination identifier from a waiting queue associated with the resource for which a decline in consumption is detected in order of queuing; and re-enabling issue of commands from the client to the server designated by the popped client/server combination identifier.