I developed a website using PHP and MySQL. The website is being hosted on Bluehost using their Pro plan. The account contains only the website and a vBulletin forum. It goes down because of account throttling.
Average of concurrent users is 80 - 200
The website was stable and fine for 800 concurrent users in the last month, but now it's going down for less than 100 users.
Technically I do the following for each page
- Execute about 2-5 select queries (using MySQLi)
- I turn on output buffering ( ob_start() )
- Load a template file for HTML output
- Turn off with clean output buffering ( ob_end_clean() )
Get the string output and write it to an external file
If the page gets requested again, I get the output from the file, and I am not doing the above steps
The average page load time before caching the output (in external file) is about 5-10 seconds. After caching the output time is 2-4 seconds
Although there is no heavy usage of the database, my account has been throttled and goes down sometimes.
When I execute "SHOW PROCESSLIST" I get 1 row result
Can I get an advice for this case