Назад | Перейти на главную страницу

Зависание сервера при обслуживании случайного файла при загрузке страницы

Я оптимизирую веб-сайт, и проблема, с которой я столкнулся сейчас, связана с сервером. Во время загрузки страницы на сервер отправляется около 40-50 запросов (в зависимости от страницы), и в каждом случае сервер зависает примерно на 5-6 секунд в определенном файле (в основном изображения, потому что css и js объединяются) , или два или три ... взгляните на снимок экрана firebug, чтобы лучше понять, о чем я говорю

http://i.stack.imgur.com/aDhih.png

(здесь 90 запросов, потому что js и css не объединяются).
веб-сайт Химики Бигелоу . Любая идея, что может быть причиной этого. Я могу взглянуть повнимательнее, мне просто нужен намек на то, что может быть причиной такого поведения. Спасибо

Похоже, ваш веб-сервер не настроен для обработки такого количества запросов.

  • включить Keep Alive

    # KeepAlive: Whether or not to allow persistent connections (more than
    # one request per connection). Set to "Off" to deactivate.
    #
    KeepAlive On
    
    #
    # 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 200
    
  • Настройте параметры сервера, чтобы достаточное количество процессов для обработки одновременных запросов

    # 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
    # MaxClients: maximum number of server processes allowed to start
    # MaxRequestsPerChild: maximum number of requests a server process serves
    <IfModule mpm_prefork_module>
        StartServers          5
        MinSpareServers       5
        MaxSpareServers      50
        MaxClients          150
        MaxRequestsPerChild   0
    </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 mpm_worker_module>
        StartServers          5
        MaxClients          150
        MinSpareThreads      25
        MaxSpareThreads      75
        ThreadsPerChild      25
        MaxRequestsPerChild   0    
    </IfModule>