1. A method comprising: receiving a request in a first thread, the request including application context and session data; creating a request context and associating it with the application context and the session data; creating a set of threads from the first thread to process the request in parallel threads, each thread in the set having a unique identifier and inheriting data from a request context object from the first thread; and invoking a request dispatcher on each thread in the set.