The most important thing about analyzing infrastructures or building web systems is to understand the underlying protocols. A good tool to learn http is the java dsc tool, which allows to send single http commands and look at their respond. Also you can put yourself in the role of the server. Authentication or caching are very useful, but often forgotten, features within http.
Client state vs. server state. Addressability, security, granularity, development time.
Optimizing.
You can use yslow as additional plugin for Firefox firebug to rate websites, the rating is splitted into different aspects like number of requests necessary.
Reverse cache is a very interesting solution to fasten up very big websites through caching on the server site.
Using sessions in web technologies is like using globals variables in other system. Almost every web application would run without any session states.
Notes from OOP 2012, talk by Stefan Tilkov
Tags: architecture, http, Modern Web, oop