ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

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

Re: [apache-talk] DSO и static сборка



In <19635.000311@webclub.ru> Alexey V. Meledin (avm@webclub.ru) wrote:
AM> День добрый!

AM> Может быть кто-нибудь знает.
AM> Когда Апач собран с DSO и все модули через него подключается, то
AM> каждый демон занимает 3Мб. (из них PHP занимает 1Мб).
AM> Аналогичная конфигурация при статичном подключении - 1,8 Мб/демон.
AM> При DSO резидентом сидит где-то 1,8Мб.

AM> Посему задам следующие достаточно наивные вопросы:
AM> 1. Насколько при DSO падает/повышается производительность и за счет
AM> чего?

ОЧЕНЬ существенно замедляется процесс старта -- на порядки. На что обычно
можно не обращать внимание (как часто вы сервер перезапускаете?). Скорость
работы если изменяется, то на неизмеримую величину. В действительности
единственная проблема -- с mod_perl'ом и всякими Oracle'ами :-( Дело в том,
что кто-то ОЧЕНЬ умный придумал загружать модули в память дважды: то есть
их сначала загружают, потом они читают конфигурацию (и если написано, что
у вас с Oracle'ом persistent connection, то и будет установлено соединение
с Oracle'ом :-), а потом их выгружают из памяти и загружают все по новой.
На ##%$% это сделано -- теперь уже никому неведомо, но гемору от этого -- выше
крыши. Особенно в случае DSO (в случае статической линковки хоть библиотеки
из памяти не выкидываются).

AM> 2. По идее механизм DSO предусматривает использование всеми
AM> демонами одних и тех же разделяемых модулей, но почему тогда размер
AM> процесса 3Мб?

Именно поэтому. Когда ты линкуеш статически, то все ненужные в данном процессе
функции избиблиотек не линкуются. Когда загружаешь динамически, то к размеру
процесса прибавляется объем всех библиотек. У меня Apache вообще занимает
в top'е за 40MiB :-)



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



 




Copyright © Lexa Software, 1996-2009.