The MU forums have moved to WordPress.org

having real performance problem (15 posts)

  1. hannitco
    Member
    Posted 16 years ago #

    I have a MU installation based on 1.0 that contains 2000-3000 blogs at the moment.
    I'm experiencing a major performance issue with top showing:

    top - 23:22:14 up 1 day, 17:36, 1 user, load average: 7.46, 13.52, 14.30
    Tasks: 93 total, 6 running, 85 sleeping, 1 stopped, 1 zombie
    Cpu(s): 85.5% us, 11.7% sy, 0.0% ni, 2.8% id, 0.0% wa, 0.0% hi, 0.0% si
    Mem: 16613772k total, 16394716k used, 219056k free, 186124k buffers
    Swap: 16771696k total, 182292k used, 16589404k free, 6110612k cached

    I've tried changing some of mysqld params, but that didn't seem to help.
    any advice ?

    Thanks allot !

  2. drmiketemp
    Member
    Posted 16 years ago #

    Do you have the object cache running?

    edit: To add to that post, also create a 'cache' subdirectory within wp-content and make it writeable by the webserver.

    reedit: Also what's at the top of that list for programs that are running?

  3. hannitco
    Member
    Posted 16 years ago #

    I have the object cache enabled.
    I'm running on VPS with 2G RAM.

    I've just moved from shared hosting to VPS, on the shared hosting I had good performance, but got shut down because of cpu usage.

    also have eAccelerator installed.

  4. xiand0
    Blocked
    Posted 16 years ago #

    first of all, type "vmstat 5" (or vmstat 10 or whatever interval) and you will get way more interesting information regarding your server than top is able to provide. Seriously. That'll show you what you system is actually doing.

    I have no clue what your budget is, but if you do have 2000-3000 blogs then perhaps you should consider getting two real (not VPS) dedicated servers, one for the MySql database and one for the webserver.

  5. honewatson
    Member
    Posted 16 years ago #

    How many blogs do you have? How much traffic?

  6. hannitco
    Member
    Posted 16 years ago #

    as mentioned above, I have 2000-3000 blogs (currently, but I want to be able to grow)
    I have around 5000 visits a day and about 10,000 page views

  7. drmiketemp
    Member
    Posted 16 years ago #

    Please see xiand0's suggestion up there. Without knowing where the bottle neck is, it'll be kind of hard to locate.

    Also check to see if the cache subdirectory actually has additional subdirectories within it and is being used. (ie delete and replace the cache subdirectory and see if the subdirectories come back) Someone had that issue awhile back where they had the cache turned on but it wasn't being used.

    The used mem seems high to me. You don't have anything else running, do you?

  8. hannitco
    Member
    Posted 16 years ago #

    my VPS servs both mysql and apache.
    I must admit I don't know vmstat enough but will try to make some sense out of it.
    The cache directory looks pretty full and fills up after deletion.

    as far as I understand I have CPU bottleneck, but don't have any idea where it lies.

    Do you have any tips for debugging and figuring the bottleneck ?

  9. drmiketemp
    Member
    Posted 16 years ago #

    Please open up a command prompt, do a 'top', and take a screen cap. Let's see what's listed as causing the load.

  10. hannitco
    Member
    Posted 16 years ago #

    as it seems my problem is with httpd, I have allot of processes of it.

    ----------------------------------
    9667 mysql 15 0 563m 376m 2900 S 20 2.3 5:59.25 mysqld
    14199 nobody 20 0 120m 23m 8124 S 15 0.1 0:00.52 httpd
    14185 nobody 16 0 122m 25m 8144 R 13 0.2 0:03.27 httpd
    14073 nobody 17 0 120m 22m 8000 R 10 0.1 0:00.76 httpd
    14254 nobody 16 0 151m 54m 7620 R 7 0.3 0:02.36 httpd
    11268 nobody 16 0 137m 42m 10m R 6 0.3 0:04.90 httpd
    14173 nobody 16 0 120m 22m 8104 R 4 0.1 0:01.24 httpd
    14139 nobody 16 0 124m 27m 8220 R 3 0.2 0:00.94 httpd
    14124 nobody 17 0 120m 22m 8228 R 2 0.1 0:00.44 httpd
    14270 nobody 16 0 125m 28m 8232 R 2 0.2 0:01.08 httpd
    14154 nobody 15 0 120m 22m 8236 S 2 0.1 0:00.64 httpd
    5753 nobody 16 0 152m 61m 14m R 1 0.4 8:39.69 httpd
    10221 nobody 15 0 145m 54m 13m S 1 0.3 3:19.36 httpd
    10219 nobody 16 0 120m 25m 9.8m R 1 0.2 0:02.34 httpd
    14136 nobody 15 0 129m 32m 7660 S 1 0.2 0:00.83 httpd
    5658 nobody 15 0 124m 34m 15m S 1 0.2 7:58.91 httpd
    5663 nobody 15 0 152m 62m 14m S 1 0.4 8:00.97 httpd
    -------------------------------------

  11. hannitco
    Member
    Posted 16 years ago #

    any idea anyone ?

  12. SteveAtty
    Member
    Posted 16 years ago #

    Any chance of formatting the output of the top command - so we get one process per line?

    What I find odd is that you only have two mySQL processses showing.

  13. selad
    Member
    Posted 16 years ago #

    Hi, I'm hannitco colleague and the list is one process per line.

    As we have many 'sleeping' httpd process we see that most of them are feed related. They are hanging for many hours.

  14. SteveAtty
    Member
    Posted 16 years ago #

    You are so right - just misread it.

    Idle processes will tend to get swapped out and so don't take much CPU or memory.

    You can configure various aspects of the httpd - specifically :

    The MaxSpareServers directive sets the desired maximum number of idle child server processes. An idle process is one which is not handling a request. If there are more than MaxSpareServers idle, then the parent process will kill off the excess processes.

    Tuning of this parameter should only be necessary on very busy sites. Setting this parameter to a large number is almost always a bad idea. If you are trying to set the value lower than MinSpareServers, Apache will automatically adjust it to MinSpareServers + 1.

    For example my server-tuning.conf file has the following settings for prefork:

    # prefork MPM
    <IfModule prefork.c>
            # number of server processes to start
            StartServers         4
            # minimum number of server processes which are kept spare
            MinSpareServers      2
            # maximum number of server processes which are kept spare
            MaxSpareServers     4
            # maximum number of server processes allowed to start
            MaxClients         250
            # maximum number of requests a server process serves
            MaxRequestsPerChild  0
    </IfModule>

    What do you get if you show your mysql process list?

  15. hannitco
    Member
    Posted 16 years ago #

    thanks, things seem much better now.
    It looks as if we still have a problem with the RSS performance.
    has any of you ran in to such sort of errors ?

About this Topic

  • Started 16 years ago by hannitco
  • Latest reply from hannitco