Well, Sun do an entry-level server that benchmarks out at 2500 simultaneous connections, probably be enough. Really depends upon the file sizes involved = number of TCP packets to transmit. They also do a range of dedicated web servers that a lot of ISPs and Web Hosts use. Come pre-configured with Linux, Apache and Site Admin/Mail Admin in Firmware. Each one will hosts about 60 domains/sites very comfortably. My ISP will rent me a whole one for £100+ per month.
You really need to calculate how many files per minute you need to deliver and what that breaks down in Gb.p.m for disk access and interface transmission. Then speak to several suppliers eg Sun, Dell, IBM. See what they calculate you will need to support the calculated traffic.
If the real traffic will be high then a cluster of lower spec web servers may be the answer.
DB server, any £1000 server with fast SCSI, dual processors and .5-1Gb RAM will do. Your 4000 concurrent users will probably only break down into 400 db transactions a minute. If it is mission critical then hot-swap RAID will treble the price. Again, a server cluster may be the answer.
Without real volume projections, my first instinct is the clusters. Entry-level servers are so cheap (Dell are doing Poweredge starters for $500) that you can just keep adding them to the cluster as traffic dictates. Start with 1 each and benchmark it. Again, with those results your chosen supplier will be able to tell you how many more you will need to cope.