1. A method for managing a plurality of resources used by a plurality of software applications that are utilized in a distributed computing environment and that are located in system memory on a hardware platform included within the distributed computing environment, the method comprising: monitoring, for the plurality of applications running on the hardware platform, usage statistics indicating an activity level for the plurality of applications, the usage statistics including incoming application access requests, data storage activity, application priority level and outgoing data from the plurality of applications; determining that at least one usage statistic for a particular application of the plurality of applications is outside of a usage threshold profile; creating an on-demand profile that specifies a set of resources used by the particular application and a set of destination inputs mapped to the particular application; mapping the destination inputs to a management module; releasing, based upon the on-demand profile, at least some of the resources of the set of resources used by the particular application; detecting, while execution of the particular application is suspended and using the management module, an access to an input of the set of destination inputs; allocating, in response to the detecting and to the particular application, the at least some of the resources of the set of resources used by the particular application; and removing, in response to the detecting, the particular application from suspension.