Abstract:
In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
Abstract:
In an application execution system having a plurality of application servers, each application server stores a plurality of applications, and has computational resources for executing applications in response to received requests. Each application server also includes instructions for loading a respective application into volatile storage and executing the application in response to a request from a client, and for returning a result. A generic application instance may be cloned, creating a pool of generic application instance clones that can be loaded with code for a requested application to produce an application instance. The application instance can then be stored in a cache to be used for a future application request.
Abstract:
A method, system, and computer readable medium for managing applications on an application execution system are disclosed. On an application server the number of instances of a first application type that are in a busy state is determined. This determination is performed at each respective time interval in a plurality of time intervals. Then, a first running average for the busy state of the first application type is computed based upon the number of instances of the first application type that are in a busy state, at the application server, at each respective time interval. A removal request is sent when the first running average for the busy state meets a first removal criterion. The removal request is a request to remove the application server from a data structure that specifies which of a plurality of application servers accept service requests for the first application type.
Abstract:
In a distributed application execution system having a plurality of application servers, each application server has volatile and nonvolatile storage as well as computational resources for executing applications as follows. A plurality of applications is stored in non-volatile storage. At least one such application is a primed application which is derived as follows. An unprimed application is executed and an initialization signal is optionally communicated to the unprimed application. A status signal is obtained from the unprimed application. Upon receipt of the status signal, the unprimed application is checkpointed to produce the primed application, and the primed application is stored. A request to execute the primed application is received from a client system. In response to the request, the primed application is loaded from non-volatile storage into volatile storage, and the primed application is executed. The primed application returns a result to the request to the client system.