Skip to main content
ExLibris
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    Increasing number of WWW server handlers (www_server child processes)

    • Article Type: General
    • Product: Aleph
    • Product Version: 18.01

    Description:
    We are experiencing very slow OPAC searches. It can take up to two minutes to deliver a search results set.

    When evaluating our system logs (non-Aleph logs), we note that the 4 process handlers for the WWW_server are filling with job requests. We believe that by increasing the number of handlers from 4 to 6, we may be able to alleviate our OPAC slowness.

    We need to know from Ex Libris if this is possible and if so, what are the ramifications of doing so.

    Are there other options for us to address OPAC slowness from system solutions?

    Resolution:
    I see in util w/1/2 on your server that you have 5 www_server child processes:

    | 4991 | 18513 | WWW Server | Feb 05 12:07:15 | Free
    | 4991 | 21765 | WWW Server c | Feb 05 14:33:20 | Free
    | 4991 | 21402 | WWW Server c | Feb 05 14:19:30 | Free
    | 4991 | 18696 | WWW Server c | Feb 05 12:20:14 | Busy for 6 seconds
    | 4991 | 18519 | WWW Server c | Feb 05 12:07:15 | Free
    | 4991 | 21280 | WWW Server c | Feb 05 14:17:40 | Free

    -- which is how we deliver it.

    At a larger site, such as yours, this will oft-times need to be increased....

    Checking with util s/4/1 I some pretty high numbers of sessions:

    ...
    10:52 - 11:22 000000324 sessions
    11:22 - 11:52 000000314 sessions
    11:52 - 12:22 000000354 sessions
    12:22 - 12:52 000000376 sessions
    12:52 - 13:22 000000366 sessions
    13:22 - 13:52 000000368 sessions
    13:52 - 14:22 000000406 sessions
    14:22 - 14:52 000000324 sessions
    14:52 - 15:22 000000340 sessions
    15:22 - 15:52 000000462 sessions

    The number of child processes is in set in aleph_start:

    setenv N_OF_SERVERS nn

    One large site has 20. Another increased theirs from 5 to 10 recently.

    This probably needs to be increased, but, to be sure, at the time when you are seeing the severe slowness, please do the following:

    1. util w/1/9 ("Monitor Servers -- Change Loop Status") (This will cause whatever Monitor Server display you choose to be refreshed every second.)

    2. util w/1/2 ("Monitor Servers -- WWW Server"). You are looking to see how many of the 5 child processes are getting the "Busy for n seconds" message.

    3. Cntl-C (to terminate the automatic Monitor refresh).

    If you see that there are periods of 5 or 10 seconds where the www_server child processes are constantly "Busy", that indicates a need to increase the number.

    If the slowness is not associated with any particular transaction or type of transaction, then probably you *will* see all the child process as "Busy" and you should increase the "setenv N_OF_SERVERS" in aleph_start.

    Otherwise, a different kind of diagnosis will be called for.


    • Article last edited: 10/8/2013
    • Was this article helpful?