1. A method for pre-provisioning a virtual machine instance, wherein the method comprises: deriving a weight function for at least one virtual machine request based on historical data of the at least one virtual machine request to create a weighted virtual machine request for each request, wherein historical data of the at least one virtual machine request comprises frequency data; capturing at least one inter-arrival pattern of requests, and applying the at least one pattern to the at least one weighted request to create a prioritized ordering of the at least one weighted request; and pre-provisioning at least one instance of a virtual machine image based on the prioritized ordering of the at least one weighted request; wherein at least one of the steps is carried out by a computer device.