1. A method of operating an application server having one or more processors, volatile memory, and non-volatile memory, the method comprising: receiving a first request to execute a first application that is not currently loaded in the volatile memory of the application server, said first application being one of a first plurality of applications stored in the non-volatile memory of the application server; determining, in response to said receiving, that there is inadequate storage space in the volatile memory to store the first application; selecting from among a second plurality of applications stored in the volatile memory, an eviction target said selecting including determining whether any of said second plurality of applications are indicated as pinned to a cache, and in response to a determination that an application from among said second plurality of applications is indicated as pinned to the cache, excluding that application from selection as the eviction target; evicting from the volatile memory the eviction target; and loading and executing the first application in response to the first received request, and returning a result responsive to the first received request.