Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] ???? ????????



In <9903.991215@xxxxxxxxxxxxx> Vadim (vadim@xxxxxxxxxxxxx) wrote:
 V>         Всем добрый день (утро, ночь).

 V>    Собственно в процессе работы возникла пара вопросов...
 V> делается локальная баннерная вертушка. На C++ написан cgi который
 V> обращается за очередным баннером.

Расстрелять грамотея, который такую #%$$& сотворил.

 V> 1. При тестировании быстродействия (цикл запросов) из консоли получаю
 V> где-то 100-120 вызовов за секунду. При вызове уже из апачей идет всего
 V> порядка 50 за секунду. В принципе этого хватает, но хочется знать
 V> почему так резко падает быстродействие. Более 8 копий апача не
 V> плодится, хотя разрешено 128.

Hint: при каждом вызове CGI нужно сделать fork и породить exec'ом еще один
процесс. Не знаю, где как, а в Linux'е это стоит весьма и весьма дорого за
счет разной GlibC'шной магии (fork дешев, а вот exec...)...

 V> 2. Как лучше (быстрее для сервера) отдавать картинку ? В принципе
 V> возможно давать клиенту из cgi редирект на картинку (location) или же
 V> давать картинку напрямую из скрипта ... Хочется выбрать вариант менее
 V> всего нагружающий сервер.

Вставить оный код на C++ (если вы уже дошли до того, чтобы это на C++ писать)
в модуль и зашить внутрь апача. Это если вы хотите беречь сервер :-) С
точки зрения экономии bandwidth'а лучше выдавать картинку самой .CGI'шкой
(а дополнительную нагрузку от этого за overhead'ом от fork/exec'а вы просто
не увидите).

 V> Использую RedHat 6.1 / IP 450Mhz III / 256Ram / SCSI диски.

Ага. Таки Linux и GlibC 2.1 ... Тогда от CGI нужно избавляться всеми
возможными способами. Старт нового процесса в Linux'е стоит ОЧЕНЬ дорого
(по сравнению с FreeBSD, а не с NT, конечно -- сделать этот процесс
медленнее, чем в NT, наверное, просто нельзя :-) ...

P.S. Можете попробовать FastCGI для начала.



=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.