I am currently hosting my website on one server with the specs:
2.8ghz Dual Quad-Core processor + 8 gigs of ram + two 500 hard drives with a 50 mbps unmetered bandwidth package.
My current problem lies in high server loads and very slow server performance throughout the day.
I am considering migrating over to The Planet onto server with the specs:
3.0ghz Dual Quad-Core + 18 gigs of ram + two 50gb hard drives with 2TB of monthly bandwidth transfer.
In an attempt to have great bandwidth pricing and server performance, I plan on downgrading my current server with my current host to a lowe-end server and keeping it only to host my VIDEO and MUSIC files with the 50mbps unmetered package. The Planet will then host my database and all other web related files on their new server.
Is this a good idea as an attempt to save money in bandwidth costs and eliminating my server lag issues?
I was offered a setup of a separate web and database server at my current host but from what I have read, no one touches the performance and reliability The Planet has to offer.
I have a site that is eating up my server resources and need to know what the best solution for this is. I'm thinking of getting another server just for mysql but do not know what specs the server should be to handle the current traffic/database load and have the site run smoothly without slowing down to a snail's pace.
An alternative is to get another server just for the videos being served and leave the database and html on the current server. This is where I'm stuck and don't know what route to take with this.
I've attached screenshots of top and bandwidth usage per day. Hopefully with this information you could tell me if I need another server or if there are any things I can do to the current server to help things move faster.
I recently started hosting a large vBulletin forum (14,014 registered users... 30-60 online at a time) on one of my dedicated servers. When there's a lot of activity on the forums, things start getting really slow. There will be like 50 php-cgi processes running. Some users get blank pages, others get this message:
Notice: Undefined variable: errfile in [path]/forums/includes/functions_log_error.php on line 163
Specs of the server are: AMD Athlon 64 3000+ 160GB SATA HDD 2GB DDR2 RAM FreeBSD 6.2 (Hosted at AwkNet)
Could there be any Apache modifications I can make to increase performance, or anything else I could try?
I deal with a server that gets positivey slammed once a week for a few months per year. I'd tell you how many hits we got tonight, but I'm still waiting for AWSTATS to chew through the 2gb access_log file...
Tonight, I made some changes that SEEM to work, but I"mn not sure what the long-term effects could be. If we have any apache experts on the forums, I'd really like to bend your ear for a few to see what you know.
Obviously, with PHP, we're limited to prefork MPM.
First of all, I dropped Timeout from 300 to 120. That should be MORE than enough time to know that we've timed out. Then I dropped KeepAliveTimeout to 5 from 15.
Here's the radical one. Watching the process list and the load, it seemed that load spiked when the processes hit their end of useful life and respawned. Duh. This was happening every four seconds at the load we were under. MaxRequestsPerChild was set to 10,000. I upped this to 80,000 over a period of hours that we were under the load. I didn't see any significant memory leakage, but it's the change I'm worried about the most. I've seen Apache do some bad things when people allow this to go unlimited, and had always used the relatively low default as a guide.
Besides not loading a bunch of dynamic modules (also done, I usually do this so I'm not worried about it), what else can I do tuning-wise to keep load down? Please note that caching and load-balancing aren't acceptable solutions; I have one server to work with (for now) and the boss says no to caching because of how frequently our information updates. We also have extensive .htaccess files, so there's no LHTTPD in my future.
Today, without any change on the server side my single running website on my server started running low. After checking the running processes I realised I have these 8 processes running with high cpu load something that didn't had before.
4245 user 20 0 283m 103m 10m R 85.1 0.3 6:44.88 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini 4243 user 20 0 241m 68m 8736 R 83.8 0.2 6:33.45 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini 4259 user 20 0 254m 82m 8720 R 83.5 0.3 6:11.00 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini 4244 user 20 0 282m 103m 10m R 82.1 0.3 6:46.49 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini 4247 user 20 0 248m 76m 8712 R 78.8 0.2 6:50.31 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini 4264 user 20 0 258m 85m 8712 R 72.9 0.3 6:49.83 /usr/bin/php-cgi -c /var/www/vhosts/system/domain/etc/php.ini
apache error log doesn't show any warnings, errors.
At the time I took this particular snapshot, it's not near its peak... it's not uncommon for the CPU load approach 60%. Reading around, it seems the CPU load should normally be under 1% (such as 0.0139% or what-not). Is this true?
The weird thing though... I have no idea where that number is coming from, because according to "top", the CPU is actually 90% idle.
I actually just raised the MaxClients from 512 to 1024 because I was hitting a constant cap of 40 requests/sec... and I was worried it was going to bottleneck. When I raised that value, the max requests per second now seem to be freed up.
If the actual CPU of the server is 90% idle... am I okay? Anyone know where Apache's getting the CPU Load info from?
if anyone has had problems with high cpu load after upgrading APACHE to 2.2.8. We were running 1.3.5 with comfortable CPU loads of 2-10 on dual Xeon 2.8's. Now the loads are 20-70 with most of the CPU being used by many many httpd processes. I've heard that APACHE v2 does consume more resources, but am wondering if there was a problem with the build, or is it that much more demanding.
OTHER INFO: WHM:11.15 CPANEL: 11.18 OS: CENTOS 4.6 KERNAL: 2.6.20.4-ts.grh.mh.i386
They don't appear for some time if I kill them (a day or more). But it repeats again and again. One day there were 8 similar processes in total in max which used all 4 cores at 100% (and even ssh console was extremely slow to do something there).
I think that somebody is trying to make a small attack of some sort but I need to check it first. I tried to look at apache logs but there were too many posting requests from different IPs and no dublicates for little period of time so I had no success.
Anyway, that script worked for us for 4 years already and we didn't have any problems with it even on our old single core P4 2.8 ghz.
way to make sure is this an attack of some sort or just this script doesn't work correctly on our new machine?
Are there any ways to get IPs of visitors who are running posting.php with CPU overloading?
been checking out this site for a while and finally decided to register because I have a problem. Also hope this is the correct forum for this topic, sorry if it isn't.
So I have a problem with Apache. One of the sites that I run/host has a moderately large vBulletin board, and Apache just seems to eat up the CPU. Load averages have shot up between 20-30 and I've seen it as high as 80. Apache and MySQL are optimized already, I'm using suPHP for security because there are other sites on this box.
The funny thing about this is that it only started happening about a week ago. After checking for rootkits and all that garbage, I reinstalled the OS just to be on the safe side. Everything comes back clean still. I also got fed up and hired Platinum Server Management for a month, to see if they could find a solution (and I've been interested in reselling their services, but that's not relevant). So far the only thing they can come up with is disable suPHP, which isn't an option. I do realize that suPHP is ~20-25 times slower than mod_php, but what totally baffles me is that it worked beforehand and started going all crazy like this. I did try running the site using an dso configuration, the load did drop, but nothing to be proud of.
This site, and the server overall hasn't had any increase in load, I've held off putting new accounts on it until I get this fixed.
In the meantime, I have said forums running on lighttpd, which lowered the load. (Also writing a tutorial on having lighty work with cPanel)
I am running in a High load problem lately. I have one of those cheap 1and1 servers which was running fine until 2 weeks ago. Once I rebooted accidentaly, it did not come back with some unrepairable kernel errors and I had to re-image it.
I chose to reimage the server with CentOS 5, for better support. The new re-image worked fine for some days, at least so I thought and now I am having high loads. The server crashes if not monitored every moment as the load is unpredictable.
Just a restart of the Apache will bring the server back to normality, but I am not sure if it is apache or some other script to be blamed. I have beeing monitoring through apache server-status, but I cannot organize something unusual in the high load moments.
12:00:29 AM CPU %user %nice %system %iowait %steal %idle 12:10:01 AM all 9.14 0.00 5.52 44.66 0.00 40.68 12:20:14 AM all 6.83 0.00 3.98 27.88 0.00 61.32 12:30:10 AM all 6.44 0.00 4.20 81.25 0.00 8.11 12:40:09 AM all 5.25 0.00 4.09 81.93 0.00 8.73 12:50:15 AM all 5.11 0.00 3.79 90.74 0.00 0.36 01:00:07 AM all 7.22 0.00 4.52 57.11 0.00 31.15 01:10:13 AM all 6.89 0.00 4.01 55.38 0.00 33.71 01:20:14 AM all 4.37 0.00 3.27 41.88 0.00 50.48 01:30:25 AM all 4.26 0.00 3.29 63.42 0.00 29.03 01:40:06 AM all 27.18 0.00 4.75 58.27 0.00 9.80 01:50:03 AM all 29.64 0.00 6.61 51.50 0.00 12.25 02:00:07 AM all 27.00 0.00 8.48 55.49 0.00 9.03 02:10:10 AM all 19.29 0.00 4.97 73.80 0.00 1.94 02:20:04 AM all 37.85 0.00 6.78 40.70 0.00 14.67 02:30:05 AM all 15.65 0.00 4.80 68.47 0.00 11.08 02:40:08 AM all 9.06 0.00 5.60 37.49 0.00 47.86 02:50:07 AM all 5.36 0.00 3.62 42.29 0.00 48.73 03:00:02 AM all 6.05 0.00 4.08 47.27 0.00 42.60 03:10:02 AM all 4.22 0.00 3.68 38.17 0.00 53.93 03:20:02 AM all 4.06 0.00 3.75 41.37 0.00 50.82 03:30:22 AM all 4.42 0.00 3.93 45.25 0.00 46.41 03:40:11 AM all 4.34 0.00 3.95 39.58 0.00 52.13 03:50:02 AM all 4.67 0.00 4.01 32.53 0.00 58.80 04:00:08 AM all 3.72 0.00 3.87 28.40 0.00 64.02 04:10:02 AM all 13.49 0.00 6.58 20.82 0.00 59.10 04:20:01 AM all 6.70 0.00 4.63 6.06 0.00 82.61 04:30:02 AM all 1.44 0.00 1.21 4.75 0.00 92.59 04:40:01 AM all 12.42 0.00 8.12 7.65 0.00 71.81 04:50:02 AM all 1.43 0.00 1.07 4.02 0.00 93.47 05:00:02 AM all 1.60 0.00 1.40 8.62 0.00 88.38 05:10:10 AM all 3.80 0.00 3.02 17.86 0.00 75.32 05:20:06 AM all 5.10 0.00 4.22 23.34 0.00 67.34 05:30:02 AM all 1.54 0.00 1.40 11.22 0.00 85.85 05:40:05 AM all 1.75 0.00 1.89 13.12 0.00 83.23 05:50:12 AM all 2.15 0.00 2.22 18.92 0.00 76.72 06:00:02 AM all 1.92 0.00 2.01 12.87 0.00 83.20 06:10:02 AM all 2.27 0.00 2.16 11.53 0.00 84.04 06:20:03 AM all 3.56 0.00 3.02 25.26 0.00 68.16 06:30:10 AM all 2.66 0.00 2.05 18.13 0.00 77.16 06:40:02 AM all 2.58 0.00 2.25 22.87 0.00 72.30 06:50:02 AM all 2.68 0.00 1.92 15.77 0.00 79.63 07:00:03 AM all 3.06 0.00 2.48 26.01 0.00 68.46 07:10:03 AM all 3.65 0.00 3.20 36.54 0.00 56.61
07:10:03 AM CPU %user %nice %system %iowait %steal %idle 07:20:03 AM all 4.40 0.00 3.28 43.86 0.00 48.46 07:30:02 AM all 4.10 0.00 3.17 31.30 0.00 61.43 07:40:06 AM all 7.67 0.00 3.95 50.79 0.00 37.59 07:50:02 AM all 4.72 0.00 3.11 44.30 0.00 47.86 08:00:03 AM all 5.57 0.00 3.72 47.15 0.00 43.56 08:10:07 AM all 10.66 0.00 3.59 71.62 0.00 14.13 08:20:17 AM all 5.67 0.00 3.42 58.81 0.00 32.10 08:30:10 AM all 11.12 0.00 3.49 76.71 0.00 8.67 08:40:03 AM all 7.00 0.00 3.36 47.94 0.00 41.71 Average: all 7.53 0.00 3.76 38.90 0.00 49.81 Some configurations: The reimage partittioning looks like this:
processor : 1 vendor_id : GenuineIntel cpu family : 15 model : 3 model name : Intel(R) Pentium(R) 4 CPU 2.80GHz stepping : 4 cpu MHz : 2793.324 cache size : 1024 KB
So my server is "unresponsive" for abour 18 hours, burst net didnt answer my tickets and I dont know what to do. Ive been with this setup for almost 5 months with no problems, No changes have been made to hardware or software.
do you know what my server having very strange problem my server load suddenly increas after every 2 or 3 days some time after 1 days but when we talk about those days in which server load is fine then that time server load very low almost 0.4 to 0.1 .
But on that high load day server load reached upto 500.
when i try to find out what wrong then i only get that there is too much connection of http when i kill httpd through this killall -KILL httpd then server load suddenly decrease and then stable.
I have a couple of sites that are generating errors because the server load is too high and when I check service status I am seeing the following: Server Load 21.49 (8 cpus)
How can I tell if the problem is one of my sites in my VPS or a different site on a different VPS on the same server?
I know there are thousands of topics about this and yes i did use search function to try doing some changes myself and didnt wanna hijack someone else's topic so started my own
well my problem is i run a torrent site which puts a lot of load on my server. Just got upgraded to P4 2.8 ghz with 2GB ram , iam running fedora with WHM/Cpanel
i will do anything with server to put load down cos of load i have turned off my 4 other big sites ...
I've got a server that suddenly over the last three days has exploded as far as server load. Watching top I have some httpd processes that are using up all of the cpu and lasting for quite some time. How can I find out more about these hanging processes? I need to track this down as quickly as possible and find out what the cause is.
if upgrading to that new server that I'll mention will probably solve my problems. Whatever help you can provide would be greatly appreciated. Below are the details:
In the GMT evenings and nights my current server gets so loaded that every page load takes 10 - 30 seconds. Even the pure html pages will be so slow to load. It seems that after a certain treshold it just suddenly becomes that much slower. Not much middleground there. I have high MaxClients and ServerLimit values now and the error log doesn't say that they are exceeded anymore but that didn't help enough.
I have a high traffic website that is using latest version of apache (2.2.x) with the prefork MPM and apache is optimized, PHP 5.2.5 and APC 3.0.15.
I get 160,000 - 210,000 pageloads per day. 32,000 - 45,000 visits per day.
Most of its pages are PHP but shouldn't be too CPU or databes intensive. Mysql isn't used and I mostly used sharedmem (php's shm functions) for databases. 2 semaphores are quite heavily used but that can't explain how a few more users would make the server serve pages so much slower.
Swap usage is practically 0 and CPU user % usage is like 1 - 2 % and CPU system % is also about the same even during peak times. However the Average Load or whatever that "top" reports is 6 - 9.
My current server scecs: 1 GB Ram, Pentium D 3 ghz, CentOS 5 32bit fully updated.
I load all pictures and even the stylesheet from a secondary server by using href="$secondaryserverIP..." in the html code, so the main server practically just serves the pages.
My new server will have apache with the worker MPM and latest versions of every software. Also its specs are: 2 GB of RAM, Intel Dual Core Xeon 2.40GHz, CentOS 5.1 32bit fully updated.
I have a sophisticated netstat based ddos script that is an improved version of DDoS Deflate and while some of these slowdowns seem to have been caused by attacks that it then was able to defend me from, most of them are not. I am even protected from users who constantly have 7+ connections to my site and if someone has a way too high number of connections, the script won't even check if it constantly has it and the script just bans that user outright. It probably is banning a bunch of innocent proxy users too but that is a small price to pay.
Alright we just bought a new customer aboard with a ChatBox on the site it seems as if this chatbox is causing higher load we went from 0.00 to 0.68-1.12 now this happened on our old server before too with another chatbox. They use vBulletin any ideas as to what would be causing this?
MySQL the last few days seems to be constantly the most demanding process in top, which it never was before. As far as I can tell, nothing has substantially changed with regards to traffic to MySQL driven sites on the server. Is there anything that might be wrong with the databases, etc., that might throw MySQL into a tizzy?
I have two quad core processors and load is like 15.
May it be caused by switch if it doesnt let traffic trough properly?
if dmesg grep eth shows 100 full duplex is it normal or should it be 1000 full duplex?
how can I make it 1000 full duplex on centos 5?
Quote:
0000:0a:02.0: eth0: (PCI Express:2.5GB/s:Width x4) 0000:0a:02.0: eth0: Intel(R) PRO/1000 Network Connection 0000:0a:02.0: eth0: MAC: 3, PHY: 5, PBA No: ffffff-0ff 0000:0a:02.0: eth1: (PCI Express:2.5GB/s:Width x4) 0000:0a:02.0: eth1: Intel(R) PRO/1000 Network Connection 0000:0a:02.0: eth1: MAC: 3, PHY: 5, PBA No: ffffff-0ff ADDRCONF(NETDEV_UP): eth0: link is not ready 0000:0a:02.0: eth0: Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX 0000:0a:02.0: eth0: 10/100 speed: disabling TSO ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready ADDRCONF(NETDEV_UP): eth1: link is not ready 0000:0a:02.0: eth1: Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX 0000:0a:02.0: eth1: 10/100 speed: disabling TSO ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready eth0: no IPv6 routers present eth1: no IPv6 routers present ADDRCONF(NETDEV_UP): eth0: link is not ready 0000:0a:02.0: eth0: Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX 0000:0a:02.0: eth0: 10/100 speed: disabling TSO ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready ADDRCONF(NETDEV_UP): eth1: link is not ready 0000:0a:02.0: eth1: Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX 0000:0a:02.0: eth1: 10/100 speed: disabling TSO ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready eth0: no IPv6 routers present eth1: no IPv6 routers present
So the site got featured on [url]and now the server is drowning...
The Coppermine Gallery usually hovers around 30~50 users daily and now, 1800, and im at a lost as how I should configure mysql to take on such a load. right now it takes about 10 secs or more to load a page and sometimes it would time out. Because it si coppermine, all pages are dynamic and can't be cached -_-"
Here's the my.cnf right now after i played around with the numbers
server spec Opteron 170 (2ghz) 2gb ram 250 7200rpm
# # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive Off
# # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. # MaxKeepAliveRequests 100
# # KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. # KeepAliveTimeout 15
# prefork MPM # StartServers: number of server processes to start # MinSpareServers: minimum number of server processes which are kept spare # MaxSpareServers: maximum number of server processes which are kept spare # ServerLimit: maximum value for MaxClients for the lifetime of the server # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 200 MaxClients 200 MaxRequestsPerChild 1500 </IfModule>
# worker MPM # StartServers: initial number of server processes to start # MaxClients: maximum number of simultaneous client connections # MinSpareThreads: minimum number of worker threads which are kept spare # MaxSpareThreads: maximum number of worker threads which are kept spare # ThreadsPerChild: constant number of worker threads in each server process # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule worker.c> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule>