Patent ID: 8739170

Claim:
A computer-implemented method for managing requests for computing capacity provided by a program execution service, the method comprising: under control of a program execution service that provides a plurality of computing nodes that are each configurable to execute one or more programs of multiple users of the program execution service, the program execution service comprising one or more physical computing systems, receiving from a first user of the program execution service a request to provide guaranteed availability of a number of computing nodes during a future period of time requested by the first user, the computing nodes guaranteed for availability by at least the first user during the future period of time requested by the first user; automatically determining whether the request for guaranteed availability of the number of computing nodes during the future period of time can be satisfied in whole or in part by the program execution service; providing the first user with information indicating whether the request for guaranteed availability of the number of computing nodes during the future period of time can be satisfied in whole or in part; automatically determining from the plurality of computing nodes of the program execution service a group of computing nodes that can satisfy the request by the first user; allocating the group of computing nodes for guaranteed availability by at least the first user during the requested period of time; receiving, during the requested period of time, a request from a second user to execute a program on the group of computing nodes that have been allocated for guaranteed availability by at least the first user during the requested period of time; and initiating, during the requested period of time, execution of the program of the second user on at least one of the computing nodes of the group of computing nodes that have been allocated for guaranteed availability during the period of time requested by the first user.