@Steve ,
You mentioned that you see a pause before the page even starts rendering, which is the same issue I am seeing. Looking at the network requests for a random forum page it is taking 4-5s just to render the html. This supports my original post(s) that the large number of queries are a major cause of the slowness since all of those queries have to finish before the response is sent to the browser.
Unfortunately moving to AWS will likely not significantly help this issue. The database will still be getting slammed by queries and acting as a potential bottleneck. Adding more web servers will not help. The best solution is to greatly reduce the number of queries. As a point of comparison, if I see more than ~100 queries required to render a single page in our applications I start looking to see if there is a problem in the code.
@Michael ,
I'm glad to hear that your developer is looking into this. My recommendation would be for them to start temporarily commenting out any customizations in the source code to see effects the number of queries required to render a page, with the goal of getting the number of queries down into the hundreds (or lower). Usually I would recommend turning on query auditing in your database (most likely MySQL), but with this many queries that won't be a really efficient way to debug.
After they find the code that is causing the extra queries then some possible optimizations could include refactoring the code to use fewer queries, changing queries to use joins, and adding caching. While at it, they might want to audit the database to make sure that the proper indexes are in place, they can greatly effect database performance.