<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: apache mod_php повисают скрипты</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html</link>
    <description>Здравствуйте.&lt;br&gt;&lt;br&gt;При запуске скрипта через cron каждую минуту следующим образом: wget &quot;http://site.ru/index.php?param=param1&quot;&lt;br&gt;&lt;br&gt;Экземпляры apache (httpd), которые обрабатывают этот запрос начинают повисать. Точнее не прекращают свою работу даже если убить процесс wget. Они так и висят в памяти, а скрипты продолжают работать.&lt;br&gt;&lt;br&gt;Процессы накапливаются, кушают всю оперативку и сервер apache перестаёт отвечать.&lt;br&gt;&lt;br&gt;На сколько я понял по информации на эту тему проблема в mod_php и том, что скрипты не выдают никакого контента пользователю и не расходуют ресурсы процессора и поэтому не попадают ни под один лимит.&lt;br&gt;&lt;br&gt;&lt;br&gt;Что делать? Как застраховать сервер от таких скриптов?&lt;br&gt;</description>

<item>
    <title>apache mod_php повисают скрипты (Frei)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#7</link>
    <pubDate>Mon, 14 Mar 2011 17:58:34 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; &amp;lt;?&lt;br&gt;&amp;gt; for($i=0;$i&amp;lt;60;$i++) &#123; &lt;br&gt;&amp;gt;     sleep(10); &lt;br&gt;&amp;gt;     print $i; &lt;br&gt;&amp;gt;     print &quot; &lt;br&gt;&amp;gt; &quot;; &lt;br&gt;&amp;gt; &#125; &lt;br&gt;&amp;gt; ?&amp;gt; &lt;br&gt;&amp;gt; mod_php - выводит полный результат через 10 минут. mod_fcgid - таймаутится, помоему &lt;br&gt;&amp;gt; через 40 секунд, но остается процесс в системе... Грустно.&lt;br&gt;&lt;br&gt;мод_пхп и через 10 минут ничего не выводит. Процессы всё равно висят.&lt;br&gt;&lt;br&gt;Проблему собственно решили пока просто отключением скрипта по собственному желанию. Сделали exit.&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; тут http://forum.nginx.org/read.php?25,30727,31964 говорят что php-fpm умеет ограничивать &lt;br&gt;&amp;gt; подобное. =) &lt;br&gt;&lt;br&gt;Вроде да, но с этим зверем я ещё не сталкивался. Да и чёт народ пишет что на офф сайте нет информации по прикручиванию к апач. Сам ещё не посмотрел.&lt;br&gt;&lt;br&gt;Спасибо за ссылку на досуге попробую прикрутить, чтобы проверить. Потом отпишусь.&lt;br&gt;</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (PavelR)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#6</link>
    <pubDate>Fri, 11 Mar 2011 19:10:36 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;&amp;gt; 2) Скрипты убрать из запуска как mod_php, запускать либо кроном напрямую, либо &lt;br&gt;&amp;gt;&amp;gt; даймоном системы. Ибо крива архитектура.&lt;br&gt;&amp;gt; Скрипты писал не я. Обучить то обучим.&lt;br&gt;&amp;gt; Второй и третий и т.д. скрипты нужны, они параллельно работают для увеличения &lt;br&gt;&amp;gt; быстродействия &lt;br&gt;&amp;gt; Тут вопрос в другом - как вообще от этого застраховаться?&lt;br&gt;&amp;gt; А запускать напрямую не удобно, да и в этом случае всё равно &lt;br&gt;&amp;gt; их никак не ограничить. При таком варианте скрипты будут работать столько, &lt;br&gt;&amp;gt; сколько захочет разработчик - опять же никак не подстраховаться от повисаний &lt;br&gt;&amp;gt; и слишком долгой работы.&lt;br&gt;&lt;br&gt;Вот так вот вроде можно. http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidbusytimeout&lt;br&gt;&lt;br&gt;&amp;lt;?&lt;br&gt;for($i=0;$i&amp;lt;60;$i++) &#123;&lt;br&gt;    sleep(10);&lt;br&gt;    print $i;&lt;br&gt;    print &quot;&lt;br&gt;&quot;;&lt;br&gt;&#125;&lt;br&gt;?&amp;gt;&lt;br&gt;&lt;br&gt;mod_php - выводит полный результат через 10 минут. mod_fcgid - таймаутится, помоему через 40 секунд, но остается процесс в системе... Грустно.&lt;br&gt;&lt;br&gt;тут http://forum.nginx.org/read.php?25,30727,31964 говорят что php-fpm умеет ограни</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (Frei)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#5</link>
    <pubDate>Fri, 11 Mar 2011 18:30:36 GMT</pubDate>
    <description>&amp;gt; я так понял, что скрипты - ваши ?&lt;br&gt;&amp;gt; 1) скрипты обучить блокировкам. Если один процесс выполняет задачу, другой процесс как &lt;br&gt;&amp;gt; правило не нужен, или даже вреден.&lt;br&gt;&amp;gt; 2) Скрипты убрать из запуска как mod_php, запускать либо кроном напрямую, либо &lt;br&gt;&amp;gt; даймоном системы. Ибо крива архитектура.&lt;br&gt;&lt;br&gt;Скрипты писал не я. Обучить то обучим.&lt;br&gt;Второй и третий и т.д. скрипты нужны, они параллельно работают для увеличения быстродействия&lt;br&gt;&lt;br&gt;Тут вопрос в другом - как вообще от этого застраховаться?&lt;br&gt;&lt;br&gt;А запускать напрямую не удобно, да и в этом случае всё равно их никак не ограничить. При таком варианте скрипты будут работать столько, сколько захочет разработчик - опять же никак не подстраховаться от повисаний и слишком долгой работы.&lt;br&gt;&lt;br&gt;И интересно как такая проблема на хостингах решается? Я сейчас куда нибудь эти скрипты закину на хостинг и буду вешать там постоянно апач. ДДОС получается :)&lt;br&gt;</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (Frei)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#4</link>
    <pubDate>Fri, 11 Mar 2011 18:26:55 GMT</pubDate>
    <description>&amp;gt; Отключил disable_functions=&quot;set_time_limit&quot;. Проверю и отпишусь. Но, что то мне подсказывает &lt;br&gt;&amp;gt; что такой ход не поможет так как эта функция в данном &lt;br&gt;&amp;gt; скрипте не используется :) &lt;br&gt;&lt;br&gt;Не помогло.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (PavelR)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#3</link>
    <pubDate>Fri, 11 Mar 2011 18:26:32 GMT</pubDate>
    <description>я так понял, что скрипты - ваши ?&lt;br&gt;&lt;br&gt;1) скрипты обучить блокировкам. Если один процесс выполняет задачу, другой процесс как правило не нужен, или даже вреден.&lt;br&gt;&lt;br&gt;2) Скрипты убрать из запуска как mod_php, запускать либо кроном напрямую, либо даймоном системы. Ибо крива архитектура.&lt;br&gt;</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (Frei)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#2</link>
    <pubDate>Fri, 11 Mar 2011 18:22:23 GMT</pubDate>
    <description>&amp;gt; процессы апача и не должны завершаться. Изучите, как работает апач.&lt;br&gt;&amp;gt; На основании чего высказывается предположение, что скрипты продолжают работать ?&lt;br&gt;&amp;gt; В курсе ли вы про наличие mod_status ?&lt;br&gt;&lt;br&gt;Могу конечно ошибаться, но количество процессов апач всё же изменяется, иначе не нужны были бы лимиты на максимальное и минимальное количество процессов.&lt;br&gt;&lt;br&gt;Предположение стало фактом после того как без дополнительных запусков скриптов те, что висели в памяти и не завершались стали выдавать результаты в БД. Т.е. скрипт должен уже завершиться, а он всё ещё работает и выдаёт результаты в БД.&lt;br&gt;&lt;br&gt;Да, конечно в курсе. Вот как раз по mod_status и видно что процессы повисли на стадии выдачи результатов пользователю (W) и видно что именно те, которые работали со скриптом.&lt;br&gt;&lt;br&gt;И там же видно что процессы копятся.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; На сколько я понял по информации на эту тему проблема в mod_php &lt;br&gt;&amp;gt;&amp;gt; и том, что скрипты не выдают никакого контента пользователю и не &lt;br&gt;&amp;gt;&amp;gt; расходуют ресурсы процессора и поэтому не попадают ни под один лим</description>
</item>

<item>
    <title>apache mod_php повисают скрипты (PavelR)</title>
    <link>https://opennet.dev/openforum/vsluhforumID1/91142.html#1</link>
    <pubDate>Fri, 11 Mar 2011 17:02:25 GMT</pubDate>
    <description>&amp;gt; Здравствуйте.&lt;br&gt;&amp;gt; При запуске скрипта через cron каждую минуту следующим образом: wget &quot;http://site.ru/index.php?param=param1&quot; &lt;br&gt;&amp;gt; Экземпляры apache (httpd), которые обрабатывают этот запрос начинают повисать. Точнее &lt;br&gt;&amp;gt; не прекращают свою работу даже если убить процесс wget. Они так &lt;br&gt;&amp;gt; и висят в памяти, а скрипты продолжают работать.&lt;br&gt;&lt;br&gt;процессы апача и не должны завершаться. Изучите, как работает апач.&lt;br&gt;На основании чего высказывается предположение, что скрипты продолжают работать ?&lt;br&gt;В курсе ли вы про наличие mod_status ?&lt;br&gt;&lt;br&gt;&amp;gt; Процессы накапливаются, кушают всю оперативку и сервер apache перестаёт отвечать.&lt;br&gt;&lt;br&gt;печаль...&lt;br&gt;&lt;br&gt;&amp;gt; На сколько я понял по информации на эту тему проблема в mod_php &lt;br&gt;&amp;gt; и том, что скрипты не выдают никакого контента пользователю и не &lt;br&gt;&amp;gt; расходуют ресурсы процессора и поэтому не попадают ни под один лимит. &lt;br&gt;&lt;br&gt;так не расходуют ресурсы процессора или продолжают работать ? :-)&lt;br&gt;&lt;br&gt;&amp;gt; Что делать? Как застраховать сервер от таких скриптов?&lt;br&gt;&lt;br&gt;max_execution_time = 30;  в php.ini&lt;br&gt;&lt;br&gt;возможно над</description>
</item>

</channel>
</rss>
