To understand these objects, you need to understand how they are used and when they are created in the runtime environment. Request is the shortest-lived of the session management objects, lasting only for the duration of a single client request. Typically, client requests occur when a user enters a URL or clicks on a hyperlink. You can use request to examine information sent in client requests, such as the data submitted in a form, or to examine information about the client and the client request, such as the type of client being used. To manage user sessions and maintain state information, you will rely on the client object.
Client maintains user-specific information across multiple requests.
Although many different users can access an application simultaneously, each user has a unique client object for that application. You can use client to maintain user preferences, such as settings for colors and fonts, or users' account information, such as user names, passwords, and account numbers. The runtime engine actually creates and destroys client objects with each request. Often you will need to pass information among clients and applications. You do this with the project and server objects.