I would like to develop a "simple" script which should be automatically detect (every 5 minutes let say) if a server (in this case the same host on which it is running) is overloaded or not.

The server in question hosts a Web server (Apache) and a MySQL server.

I found some interesting resources related to this problem:

  1. https://stackoverflow.com/questions/3029043/know-if-a-mysql-server-is-overloaded-with-php
  2. http://spicefuse.com/server-overloading-explained-t-2.html
  3. http://linux.die.net/man/3/overload

It's clear that before stating that a server is overloaded or not I should check several parameters, but how can I combine them? Which are the thresholds for each of these aspects?

In your opinion, what would be the "best" solution?


  • What is your end goal in knowing the server is under high load? – WerkkreW Apr 6 '12 at 7:32
  • Only you can answer these questions based on your workloads and business requirements. – user9517 Apr 6 '12 at 7:39

A server is overloaded when it cannot perform it's required functions in a timely manner. What counts as "required functions" and "timely manner" is defined by the person(s) responsible for the machine's operation, in consultation with the stakeholders of the service(s) provided.

| improve this answer | |
  • Yuck for the word stakeholders. I've been hearing it far too often at work recently. Otherwise, agreed. – dmourati Apr 6 '12 at 8:13
  • Would you rather be a steakholder? – Kyle Smith Apr 6 '12 at 11:23

Not the answer you're looking for? Browse other questions tagged or ask your own question.