Having discussed request processing in general, it's now time to look at specifics. Our first case will be the most popular one: handling HTTP requests for interactive sessions. As you know, what typically happens here is that an interactive client (i.e., a user with a Web browser) communicates with a Web server, asking it to process its HTTP request. The Web server responds as appropriate. The communication is synchronous, and a logical “session” often involves more than one roundtrip, either because users have temporarily navigated somewhere else or, more likely, because the application simply presents its logical operations over a series of Web pages (i.e., the notion of a shopping cart).