often does the data get updated? Is it mostly reads? If so,
optimization is fairly easy, and caching things as Jerry described
is going to be the way to go for sure.
If you're doing serious data updating as part of those requests,
the caching strategy is going to be significantly less useful. You
are talking about 40,000,000 requests per hour, which is
significantly more than almost any web site, AFAIK. So you are
pushing the envelope....