1. A method implementable on a first computing device for allocating one or more computational resources, the method comprising: receiving, by one or more processors, information associated with a first set of computational resources from a cloud infrastructure, wherein the first set of computational resources have been allocated to the first computing device by the cloud infrastructure; determining, by the one or more processors, one or more computational resources from the first set of computational resources based on a comparison between a first set of parameters associated with a workflow received by the first computing device and a second set of parameters associated with a peak workflow, wherein the first set of parameters and the second set of parameters are indicative of computational resources for processing the workflow and the peak workflow, respectively; allocating, by a marketplace server, the identified one or more computational resources to a second computing device; monitoring, by the one or more processors, the first computing device such that the first set of parameters is monitored; and instructing, by the one or more processors, the market place server to preempt the allocated one or more computational resources based on the monitoring, wherein the preempting comprises withdrawing the allocation of the identified one or more computational resources from the second computing device; and allocating, by the marketplace server, the preempted computational resources to the first computing device.