How do I "load balance" my application? That is, I want to redirect the user to another server if the number of users is over a threshold.
If using Servlet Sessions make sure that you configure the load balancer for stickiness. Stickiness guarantees that all requests from a client are delivered to the same Servlet Engine. Also, if you want to guarantee that your session data survives node failures you have to persistent your session state to a shared database and re-construct it in case of failure.
Advanced Servlet Engines like IBM WebSphere Application Server Adv. Edition support persistent sessions out of the box, whereas Java Web Server does not.