1. A method in a hybrid resource allocation module executing at a computing device for efficiently providing access to cloud resources to a plurality of applications, the method comprising: receiving, at the hybrid resource allocation module from a first application of the plurality of applications, a request for available resource information of the cloud resources, wherein the first application is attempting to launch a task using at least some of the cloud resources; determining, by the hybrid resource allocation module, whether the first application has been categorized into an optimistic cluster or a pessimistic cluster; responsive to determining that the first application has been categorized into the optimistic cluster, setting a lock to prevent any of the plurality of applications categorized into the pessimistic cluster from being able to request any available resource information while the first application is still attempting to launch the task, wherein the lock does not prevent any other applications categorized into the optimistic cluster from being able to request available resource information while the first application is still attempting to launch the task; and providing the available resource information to the first application.