Доступен (http://httpd.apache.org/dev/dist/Announcement2.4.html) релиз http-сервера Apache 2.4.1 (http://www.apache.org/dist/httpd/), первый выпуск новой стабильной ветки 2.4.x, последние годы развиваемой в рамках экспериментальной ветки 2.3.x (прошлая стабильная ветка Apache 2.2 вышла (http://www.opennet.me/opennews/art.shtml?num=6546) в 2005 году, а первая альфа-версия 2.3.0 была представлена в 2008 году). В составе ветки 2.4.x развивались новые возможности, которые невозможно было интегрировать в стабильную ветку 2.2.x в силу большого размера вносимого кода, необходимости значительной переработки подсистем или из-за нарушения совместимости.Несмотря на то, что в ветке 2.4 заметно расширен API, он остаётся обратно совместимым с API Apache 2.2. Написанные для Apache 2.2.x модули потребуют перекомпиляции, но будут работать в Apache 2.4 без изменений кода или потребуют минимальных изменений. В отличие от прошлых выпусков, из состава пакета с исходными текстами Apache 2.4 исключе...
URL: http://httpd.apache.org/dev/dist/Announcement2.4.html
Новость: http://www.opennet.me/opennews/art.shtml?num=33138
Апачему Event MPM на KQueue и EPoll но не на GCD?
Проблемы яблок индейцев не интересуют :)
Не знаю что там с индейцами и яблоками а MPM для GCD уже есть. http://libdispatch.macosforge.org/trac/wiki/apacheЛицензия, кстати, Apache License. В данный момент уже поддерживается в FreeBSD и MacOS и есть реализация для пингвинов с солярой.
Потому что KQueue > GCD ?
> Потому что KQueue > GCD ?Скорее потому что kqueue способ уведомления о событиях, а GCD способ запуска новых потоков, с чем неплохо справляется и более низкоуровневый pthread.
>> Потому что KQueue > GCD ?
> Скорее потому что kqueue способ уведомления о событиях, а GCD способ запуска
> новых потоков, с чем неплохо справляется и более низкоуровневый pthread.Не совсем так, GCD это целый комбайн, изначально он работает с волокнами но позволяет запускать несколько потоков для их обработки.
pthread по сравнению с ним кстати та ещё монстрятина.
А разве GCD работает вне Objective C runtime?
FYI: devel/libdispatch. GCD for FreeBSD. :)
Ну вроде не плохо
особенно порадовало mod_ratelimit
Рад, что Индеец жив, здоров и растёт большим. Но я на днях последний сервер под Апачем на nginx перевёл. А после включения в php-fpm опции ondemand всё стало совсем шоколадно.
Я думал индеец это чероки...
Глупый, indian же.
> Я думал индеец это чероки...А я думал что апачи и чероки - разные племена индейцев. Может, историю и географию хоть немного изучать надо? А то вон какой позор на публике получается :)
> А я думал что апачи и чероки - разные племена индейцев. Может,
> историю и географию хоть немного изучать надо? А то вон какой
> позор на публике получается :)А еще есть куча людей, которые путают индейцев, индийцев и индусов.
>> А я думал что апачи и чероки - разные племена индейцев. Может,
>> историю и географию хоть немного изучать надо? А то вон какой
>> позор на публике получается :)
>индийцев и индусов.в чем разница?
> в чем разница?Примерно как между русскими и православными.
> сервер под Апачем на nginx перевёл. А после включения в php-fpmвсё дело в том, что apache - это несколько больше чем php
> всё дело в том, что apache - это несколько больше чем phpА с этим никто и не спорит. Просто в конкретно моём случе оказалось, что на шести разных серверах под разными проектами связка nginx+php-fpm+third-part-modules покрывает все потребности. И там, где раньше сервер упирался в максимальное количество запущенных процессов апача, сейчас он ни во что не упирается.
Ещё раз напомню, речь не о том, что nginx > apache, а о том, что нынче бОльшая часть функций апача (но не все, разумеется) легко реализуется на nginx с меньшим потреблением ресурсов системы.
> А с этим никто и не спорит. Просто в конкретно моём случе оказалось, что на шести разных серверах под разными проектами связка nginx+php-fpm+third-part-modules покрывает все потребности. И там, где раньше сервер упирался в максимальное количество запущенных процессов апача, сейчас он ни во что не упирается.И раньше и теперь - сервер явно "упирается" в некомпетентного системного администратора. Судя по описанию "проблемы" - в вашем случае было достаточно просто поставить перед апачем легкий прокси, хоть тот же апач с другим MPM (event, woker).
> нынче бОльшая часть функций апача (но не все, разумеется) легко реализуется на nginx
"Большая", потому что вы готовы посчитать и сравнить числа - или потому что просто вам кажется что больше?
> Судя по описанию «проблемы» — в вашем случае было достаточно
> просто поставить перед апачем легкий прокси, хоть тот же апач с
> другим MPM (event, woker).внизапна! после установки этого «прокси» апач вообще оказался не нужен.
В данном случае - да. Правда, проделана куча ненужной, в общем-то, работы.
> И раньше и теперь - сервер явно "упирается" в некомпетентного системного администратора.О, господи, ещё один "диагност по фотографии"... Ничего не знает ни о задаче, ни о параметрах системы - но обязательно вылезет со своим "авторитетным" мнением.
> Судя по описанию "проблемы" - в вашем случае было достаточно просто поставить перед апачем легкий прокси, хоть тот же апач с другим MPM (event, woker).
Понятно. Простая мысль "а зачем ставить Апач, если его можно НЕ ставить" головы "компетентных" горе-теоретиков редко посещает. Как и другая мысль, что количество возможных решений больше одного, им известного.
>> И раньше и теперь - сервер явно "упирается" в некомпетентного системного администратора.
> О, господи, ещё один "диагност по фотографии"... Ничего не знает ни о задаче, ни о параметрах системыПонимающему вы сообщили достаточно. Если считаете, что "диагност" ошибся - опишите проблему детальнее.
> Простая мысль "а зачем ставить Апач, если его можно НЕ ставить" головы "компетентных" горе-теоретиков редко посещает.
Головы компетентных без кавычек - посещает, поверьте. Естественно, если действительно можно не ставить, что достаточно нетипично для бакенда.
> количество возможных решений больше одного, им известного
И это известно. Более того, вам показали как можно было решить "проблему" не переделывая фактически все.
> всё дело в том, что apache - это несколько больше чем phpОсобенно хорошо это заметно когда он форкает 100500 процессов где и похапэ и апач и память заканчивается :)
> Особенно хорошо это заметно когда он форкает 100500 процессов где и похапэ
> и апач и память заканчивается :)- неужели не слышали что кроме prefork есть другие MPM? Даже в статье написано - worker, процессов будет 2-3, а расход ресурсов существенно упадет
>- неужели не слышали что кроме prefork есть другие MPM? Даже в статье написано - worker, процессов будет 2-3, а расход ресурсов существенно упадетВ apache столько всего что его нужно изучать чтобы пользоваться им эффективно - мало просто понатыкать опции чтобы как-то завелось (если у вас наблюдаются признаки синдрома виндузятника - то вам сначала надо пройти курс терапии чтобы приниматься за осноение этого мощного, гибкого и очень быстрого комбайна).
По новости нужно отдать должное майнтайнерам за грамотное решение (с заботой о пользователях): "Несмотря на то, что в ветке 2.4 заметно расширен API, он остаётся обратно совместимым с API Apache 2.2. Написанные для Apache 2.2.x модули потребуют перекомпиляции, но будут работать в Apache 2.4 без изменений кода или потребуют минимальных изменений."
Когда я последний раз интересовался mod_php, оно все еще падало под всем кроме prefork. А без mod_php апач таки действительно не нужен.
> Когда я последний раз интересовался mod_php, оно все еще падало под всем
> кроме prefork. А без mod_php апач таки действительно не нужен.Это хорошо объяснено в мануале PHP. Дело не в самом mod_php или PHP, дело в том, что не все собираемые PHP воедино библиотеки thread-safe. Поэтому использовать PHP с тредами можно разве что для экспериментов.
Просто не юзайте винду, в нормальных ОС есть разделение памяти процессами до момента записи в оную.
> Просто не юзайте винду, в нормальных ОС есть разделение памяти процессами до
> момента записи в оную.вообще-то в винде тоже есть. те же DLL она пречудесно расшаривает между процессами, если есть возможность.
друге дело, что CreateProcess() реализован несколько… через соседский анус. в принципе, при использовании Native API и некоторых недокументированых структур возможно сделать «почти настоящий» fork(), даже с некоторым расшариванием памяти. но это геморрой, да к тому же структуры меняются чуть ли не с каждым сервиспаком.
mod_lua хехе. это очень жорошо, что свободные проекты свободно обмениваются идеями
поддержка асинхронных операций чтения и записи - давно этого ждали...
event mpm потестим, а то он все падал..
> event mpm потестим, а то он все падал..Интересно. А в каких условиях "падал"? Вы часом, с mod_php его не используете?
На самом деле, что в апаче, что в nginx жутко не хватает встроенного, из коробки, mod_wsgi.fast_cgi - зло, а альтернативы на продакшн нет. Собсно, это заставляет встраивать в свои проекты
Складывается впечатление, что авторам современных сделать поддержку нормального WSGI просто в жуткое западло.
> fast_cgi - злоЧем?
> На самом деле, что в апаче, что в nginx жутко не хватает
> встроенного, из коробки, mod_wsgi.а это разве не из коробки - http://wiki.nginx.org/HttpUwsgiModule?
Мануалы не предназначены для настоящих джедаев.>This module first appeared in nginx-0.8.40
Есть же FastCGI, зачем вам WCGI?
mod_fastcgi ?
И даже дружит с fpm?
Дружит, причем давно. У меня apache в роли "выполнялки .htaccess" прекрасно работает в связке nginx + apache 2.2(mod_fastcgi) + php-fpm
> Дружит, причем давно. У меня apache в роли "выполнялки .htaccess" прекрасно работает
> в связке nginx + apache 2.2(mod_fastcgi) + php-fpmМы говорим об одном fastcgi?
Я про тот, который демонизируется и слушает порт..htacess + fastcgi - я так понимаю, работает все, кроме php_value/flag ?