Well, it depends on quite a few things, but let’s start by looking at some server settings and example web applications.
Arguably the two most important settings that govern how much simultaneous traffic a Linux server running the LAMP stack can handle are the Apache MaxClients setting and the MySQL/Mariadb max_connections setting. From here on I’ll refer to both of these settings as your max connection settings. If set too high your web and database software can consume all of a server’s available memory and crash it, which can be very painful. If set too low your web server will slow incoming traffic unnecessarily.
For example, if your application is streamlined and doesn’t use much RAM to render web pages then your max connections settings can be set very high, allowing hundreds of simultaneous users to your site on a small VPS with, say, 2GB RAM. However, a WordPress site with tons of plugins – some poorly coded with non-optimized MySQL queries – can use so much RAM that the max connections settings should be set very low, in order to prevent RAM swapping and server crashes.
Another consideration is that most web site’s memory and traffic usage change over time. Your web site’s code changes, the amount of traffic a site receives changes, databases get larger and databases get optimized, all of which change the amount of RAM that it takes the server to render your pages. Which of course means that your max connection settings need to change over time as well.
So what is a good DevOps/SysAdmin supposed to do to keep their sites running fast without crashing servers? Keep your code tight, your db’s optimized, and monitor your Apache and MySQL memory usage and page render times and re-tune those max connection settings often.
Or you sign up for a Brownrice SmartVPS and we’ll take care of the monitoring and max connection settings for you! Our custom SmartVPS algorithm constantly monitors Apache and MySQL memory usage and adjusts the max connections settings on the fly and will keep you informed with email alerts and Dashboard Performance tools.
And remember: Fast speeds equals lots of happy customers and good search engine rankings, so this is well worth your time.
Questions? Feel free to ask in the comments below!