Plugins draining system resources

My site went down for a while yesterday. I'm hosted on a 2 cloud servers from Rackspace. One server for the database and a separate server for everything else. I submitted a support ticket to Rackspace when the site went down and got this message....

"The problem was, that there was a very large number of network connections to Apache that were hung in the CLOSE_WAIT state. I see that your server has been starving for RAM badly in recent memory (ie: using more RAM than it has), and Apache is getting killed for memory over-use frequently. To remedy this, I have reduced Apache's MaxClients setting to 10, which is more appropriate for your 1GB server, as your web-app is using as much as 100MB of RAM per connection. This is fairly high, and indicates that you probably have some plugin or other PHP code on your site that could use the attention of a web developer."

My question...how can I narrow down the plugin or plugins causing the problem? I need some advice for next steps and optimization. Right now the site only has 30 users, but there will be around 20,000 users in September.

Thanks, I look forward to your suggestions.

  • Jack Kitterhing
    • Code Norris

    Hi there @Bruce,

    Hope you're well today and thanks for your question.

    We do have a flow chart here
    but that's more for conflicts, is there anything relevant in your apache error log? There should be a few errors relating to these issues.

    But I would say with 20,000 users 1GB of ram won't be enough, as a minimum I'd suggest 2GB, ideally 4GB.

    I'm here to help.

    Thanks!

    Kind Regards
    Jack.

    • Bruce
      • Site Builder, Child of Zeus

      Thank you Jack. I'll check the log and see if I can figure anything out. I had a couple of plugins and a theme that were set to auto-update from the original authors. The error seemed to coincide with the first auto-update process. Is it possible the problem lies in that update?

  • Timothy Bowers
    • Chief Pigeon

    Hey Bruce,

    Just to build on Jacks response.

    You should be able to check what connection are hung, did they not say what opened the connection?

    You should also be able to watch what processors are running.

    With regards to ram, that will depend on how many connections are concurrent and how much is being processed. Basically the more code being run, the more users running that code, the more resources you will need. You'd need to check how much each load will cost you in resources.

    Have a great day!

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.