информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Все любят медСетевые кракеры и правда о деле ЛевинаСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Скомпилированный модуль [upd] 20.12.05 15:33  Число просмотров: 3338
Автор: amirul <Serge> Статус: The Elderman
Отредактировано 20.12.05 15:44  Количество правок: 1
<"чистая" ссылка>
> Из разумных аргументов удалось вычленить:
> -откомпилированные cgi-приложения (т.е. не требующие
> запуска интерпретатора) работают быстрее, потому что не
> требуется пошаговая интерпретация;

Это by design и избавиться от этого невозможно

> -при значительных нагрузках меньше нагружают сервер модули,
> т.к. не требуется создания отдельного процесса для
> выполнения программы;

А вот от создания отдельного процесса избавиться можно. Ведь и perl и php в детстве тоже запускались отдельными процессами.

> Расскажите мне, пожалуйста, вкратце, что будет работать
> быстрее в режиме реальной нагрузки - скомпилированный cgi
> (например, на С) или модуль загружаемый, но с
> интерпретацией (типа PHP). Если это зависит от задач или

Как по мне, если действительно имеет значение ТОЛЬКО скорость работы, то наилучшим вариантом будет CGI на C/C++, только не в виде stand-alone приложения, а в виде модуля апача.

Опять таки, лично мое мнение, преимущества Perl/PHP перед C/C++ при разработке Web приложений лежат совершенно не в плоскости скорости РАБОТЫ (по этому параметру C/C++ рвут все интерпретаторы в клочья), а в скорости РАЗРАБОТКИ.

----------------

Да, кстати, все велосипеды оказывается уже изобретены
http://en.wikipedia.org/wiki/Fastcgi
<web building>
cgi и модули 20.12.05 15:11  
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
<"чистая" ссылка>
Есть такой вопрос: что работает быстрее, cgi-приложения (к примеру на С) или вещи типа mod_php, mod_perl (пусть речь идёт только об Apache).
Искал в интернете - там на форумах все кидаются друг в друга какашками, меряются письками и посылают друг друга на$#$.
Из разумных аргументов удалось вычленить:
-откомпилированные cgi-приложения (т.е. не требующие запуска интерпретатора) работают быстрее, потому что не требуется пошаговая интерпретация;
-при значительных нагрузках меньше нагружают сервер модули, т.к. не требуется создания отдельного процесса для выполнения программы;

Однако встречаются и совсем другие мнения, подтверждённые собственными бенчмарками и личным опытом. В общем, я так и не понял.
Расскажите мне, пожалуйста, вкратце, что будет работать быстрее в режиме реальной нагрузки - скомпилированный cgi (например, на С) или модуль загружаемый, но с интерпретацией (типа PHP). Если это зависит от задач или условий каких-то, то тоже, если можно, вкратце о задачах и условиях этих.

Спасибо.
Зависит от конкретной ситуации. 20.12.05 17:55  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 20.12.05 17:58  Количество правок: 1
<"чистая" ссылка>
Зависит от конкретной ситуации.

Например, если проблема более вычислительного характера, то интерпретаторы проиграют. Тем более, если код не прикомпилирован, то время еще потратится на синтаксический анализ.

Если же нужно дергать медленные системные функции (диск форматировать или по сети лазить), то побарабану. Накладные "расходы" на интерпретацию будут незаметны.

Если же к модулю слишком часто обращаются, то может выиграть интерпретатор. Такая ситуация крайне экзотическая и выигрыш незначителен, но используют интерпретаторы для удобства и скорости написания и сопровождения.

Чаще всего скорость сети значительно тормознутее, чем обработка данных на сервере. Поэтому нет смысла замарачиваться.
Во главу угла надо поставить "Возможно ли реализовать данную задачу этим инструментом". На втором месте "Скорость разработки и удобство поддержки". Последнее быстродействие, если на это не делается особого упора и применение именно этого инструментария не дает колоссальный эффект.
Скомпилированный модуль [upd] 20.12.05 15:33  
Автор: amirul <Serge> Статус: The Elderman
Отредактировано 20.12.05 15:44  Количество правок: 1
<"чистая" ссылка>
> Из разумных аргументов удалось вычленить:
> -откомпилированные cgi-приложения (т.е. не требующие
> запуска интерпретатора) работают быстрее, потому что не
> требуется пошаговая интерпретация;

Это by design и избавиться от этого невозможно

> -при значительных нагрузках меньше нагружают сервер модули,
> т.к. не требуется создания отдельного процесса для
> выполнения программы;

А вот от создания отдельного процесса избавиться можно. Ведь и perl и php в детстве тоже запускались отдельными процессами.

> Расскажите мне, пожалуйста, вкратце, что будет работать
> быстрее в режиме реальной нагрузки - скомпилированный cgi
> (например, на С) или модуль загружаемый, но с
> интерпретацией (типа PHP). Если это зависит от задач или

Как по мне, если действительно имеет значение ТОЛЬКО скорость работы, то наилучшим вариантом будет CGI на C/C++, только не в виде stand-alone приложения, а в виде модуля апача.

Опять таки, лично мое мнение, преимущества Perl/PHP перед C/C++ при разработке Web приложений лежат совершенно не в плоскости скорости РАБОТЫ (по этому параметру C/C++ рвут все интерпретаторы в клочья), а в скорости РАЗРАБОТКИ.

----------------

Да, кстати, все велосипеды оказывается уже изобретены
http://en.wikipedia.org/wiki/Fastcgi
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach