?
Solved

High CPU usage

Posted on 2011-02-10
8
Medium Priority
?
602 Views
Last Modified: 2012-05-11
Hey I'm new to server administration and I recently moved my site to a VPS everything was fine for a few weeks, but the site has begun to go down regularly.  At these times when I check my VPS resources server usage is usually 90%+.  The entire site is written using php, javascript, and AJAX.

Could the CPU usage be causing the site to go down? and if so, do you have any tips on reducing CPU usage?

Thanks
0
Comment
Question by:Frontstart
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 20

Expert Comment

by:edster9999
ID: 34866434
Remember you share the CPU with other people.
Two things can cause this issue.  

If your CPU time is hitting the max then this will slow your site(s) down and may cause it to stop responding.  Drop to the shell and run 'top' to see what is running fast.
This may be a web page that is getting into some sort of loop and using all the cpu time or it may be someone messing (hacking ?) with your site.

The other thing can be in the boxes cpu is running too hot (too busy).  If you do not see your CPU time as very high call the tech support and ask them what is going on.  It could be someone sharing your VPS is getting hacked / DDos'ed and that is impacting your site.
0
 
LVL 13

Assisted Solution

by:LinuxGuru
LinuxGuru earned 1000 total points
ID: 34867328
Yes, as mentioned above you need to monitor the process running. Enter the following command after logging to your server via SSH.

top -c

Now you can see the process running and memory utilization.

While in top -c you can issue the following command to check the things causing high memory and processor usage.

Hold shiftkey + m

Hold shiftkey + p

You can then kill or suspend that accounts causing high server load.
0
 

Author Comment

by:Frontstart
ID: 34872339
After running top -c, It looks like two httpd processes from the apache server are at the top of the list at around 26% each, everything else is ~1%.  Those were the highest readings I could get before it went down.

Any idea what the issue could be? (restarting the server brings the site back up for a while but it just goes down again)
0
Does Your Cloud Backup Use Blockchain Technology?

Blockchain technology has already revolutionized finance thanks to Bitcoin. Now it's disrupting other areas, including the realm of data protection. Learn how blockchain is now being used to authenticate backup files and keep them safe from hackers.

 
LVL 20

Expert Comment

by:edster9999
ID: 34873540
It could be pure load.  You have too many people to run on one VPS.
Look at your logs and work out how many hits per hour you get.
If that is the case then you need to get another VPS server or a dedicated server (or two).

If it is not high then you have bad code that is getting stuck in loops.
If this just started happening did you update the code or change anything ?

0
 

Author Comment

by:Frontstart
ID: 34873976
The site is still being developed so new code is added everyday, but our users also doubled around the time this started happening.  What type of numbers would be too much for a VPS?
0
 
LVL 20

Accepted Solution

by:
edster9999 earned 1000 total points
ID: 34878042
There is no set answer to that.

You dont need to answer these questions just think about them -
How much cpu does each page of your site take to display?  A simple static text only site would be far different to a site that is looking up lots of info from databases for each page.
How busy is the box?  Remember you share it with other people.  If you are sharing it with 20 high users who all run multiple sites then it will run differently to it hosting 10 light users. Maybe talk to the hosting company and get their view on this.  They could look at your usage compared to others on the same box and see how it looks.

A good idea would be to install the same code on a pc (not a public hosted one just a pc on your network) and run jMeter or similar on another box and try different numbers of users (jMeter can pretend to be multiple users all using the site).
Maybe ramp up the users over time.  20 minutes of 10 users, then 20 minutes of 50, then 20 minutes of 100 etc until you kill the code / box.
This does not give you the final figure of number of users you can run as the test box will be different to the real box but it will show you if your code 'leaks' memory or cpu usage over time and will give you some idea about how it scales up.
Oh and DO NOT do testing like this on your live box as you will probably kill the VPS and your hosting company will ban you :(
0
 
LVL 70

Expert Comment

by:Qlemo
ID: 35414457
This question has been classified as abandoned and is being closed as part of the Cleanup Program. See my comment at the end of the question for more details.
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

INTRODUCTION The purpose of this document is to demonstrate the Installation and configuration, of the HP EVA 4400 SAN Storage. The name , IP and the WWN ID’s used here are not the real ones. ABOUT THE STORAGE For most of you reading this, you …
New style of hardware planning for Microsoft Exchange server.
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…

800 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question