It depends on three things:
1. What you are trying to load balance.
2. If the servers are all the same or different.
3. What type of load balancing equipment you are using.
Let's assume you have 4 servers, all the same size. Its always best to have one database server (its actually best to have two database servers and load balance them as well, but we can't have everything
). You should also consider putting a firewall in front of the database server.
Since you are going to be doing a lot of ASP/CGI to query the database you probably want to use the remaining three servers to serve content. If you had one server that was significantly more powerful than the other two you might consider doing all ASP/CGI processing on that server and just use the other two for serving static content (HTML and Images).
If you are going to use the database queries to create session IDs, then you will want to use some sort of persistence based load balancing.
Depending on the types of service your ISP offers you might be able to save some money by looking into Server Side Caching (like the CacheFlow 725) and SSL Acceleration.
Hope this helps.