Patent ID: 8606920

Claim:
A non-transitory computer-readable storage medium having computer-executable instructions stored thereon that, when executed by a computer, cause the computer to: receive a request for computing resources of a service provider system from a requesting application, the request comprising an indication of a period of time for which the request is valid; determine that the requested computing resources are not currently available; upon determining that the requested computing resources are not currently available, determine suitable alternative computing resources that may satisfy the request; upon determining that the requested computing resources are not currently available, send an error message to the requesting application indicating that the requested computing resources are not currently available and store the request as a pending resource request; subsequent to sending the error message, periodically monitor the availability of the computing resources of the service provider system to determine whether the requested computing resources or the suitable alternative computing resources become available for the pending resource request during the period of time indicated by the request; upon determining that the requested computing resources or the suitable alternative computing resources become available for the pending resource request during the period of time indicated by the request, send a resource availability notification to the requesting application indicating that the requested computing resources or the suitable alternative computing resources are available; and subsequent to sending the resource availability notification, receive a request from the requesting application to allocate the requested computing resources or the suitable alternative computing resources indicated in the resource availability notification from the service provider system.