in reply to Hardware scalable web architecture
You can store data in sessions, but you may need to be able to share the sessions between servers, either storing them in a database, or on some shared storage (NFS server).
Load balancing can be tricky too, because you don't want the load-balancer itself to be the single point-of-failure... That's why most people use the simplest load-balancer, round-robin DNS (each new incoming connection resolves to a different server, and you have at least two DNSes, don't you ? ).