Amy,
a well-known problem for many people is to not to be aware of load being caused on servers and network (NIC) when website is visited. Be aware of each little detail in sequence while a page is build and delivered. Such a discussion will open a can of worms and I will interrupt very harsh later on.

To explain it some keywords must be explained.
Many people think there each hit is always a page impression. That's not true:
First you have a view which can become an impression. A page impression is full transfer (and receipt) of all page related data to browser.
In reality there are much more (count 5 - 10 times or more) page views where only part of data is displayed in browser.
This difference very often is result of slow delivery of content and further clicks of visitor.
Now, calculate load of servers for yourself following an example:
DB server is running on a different machine than webserver. One page needs 50 SQL queries to get all data.
This means:
Visitor touches webserver with one small request (inbound traffic). Webserver triggers PHP (in our case) which in turn runs code related (get data from DB server (outbound / inbound traffic), do what code wants to do with it, etc. pp.). Due to dynamic construction of the page there are few SQL statements at beginning of this process which cause later queries based on data involved.
It's like table tennis: Ping - Pong - Ping - Pong - ...
Try to estimate number of db requests when there are 10 or more pages requested per second (views and impressions!).
Here we are at security:
Code must be aware of interrupts in execution, delayed transfer of data and all things possible in multiuser environment as well as networks. First sign of a DoS can be a missing (not delivered) picture on a page.
In a previous job I had to deal with a CMS not being aware of this:
Code was ready with the task within short time but, it's loops took more than 5 minutes to end program after every start. This caused DoS because ten visitors within short time brought server down (normally this site had about 1.000.000 page impressions (!) per month). To get arguments when speaking with customer I hacked this CMS with a normal browser while causing a DoS and getting error messages which helped to dive deeper without knowing code used.
Remark:
System for itself was save (I have been the developer of setting scheme being used

) but, CMS has been hackable. To help customer I set webservers timeout to 10 seconds instead of default value (Apache: 300). The coders started crying and whining ...
In this example you can see very easy why it is so important to have a close look at efficiency of code and schema in db. Lowering number of queries alone does not solve all problems, those queries must be efficient as well because a DoS of DB server can also open holes. This is reason why I wrote about lesser normalization.
Server can be whatever value of money you want to spend for it - it does not matter when coding is bad.
Try to bring some servers down with many reloads of different pages or run multiple wget processes against them. You will have luck in many cases due to reality in hosted environments. CMSs used might be hackable than even when they are "safe" with little number of requests.
An easy example to fill a 100 mbit/s line is to use one of those download accelerators (Get it Right or the like) to download a file when sitting behind a proxy cluster. Due to functionality of such download tools there will be a large number of (sometimes identical!) partial requests which in turn are proxied by such clusters!
A user with a slow analog modem is able to fill a fast least line for hours this way. Line is not available for other users, NIC of server is also full loaded because cluster is served as fast as possible. Client is not able to receive data in time and requests parts again. Result: DoS.
I still have according logs (Cisco, webserver) available because this happened at one computer centre managed by me. This is one of the reasons why I refuse to save downloadable files in DB - imagine number of queries in a case of using such tools and many downloads.
You see, there are many issues which should be taken into account - it must be weighted.
cu, diri