The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Раздел полезных советов: Особенности работы длительно выполняющихся PHP скриптов в Apache"
Отправлено auto_tips, 28-Май-08 12:23 
Рассмотрим поведение Apache при принудительном закрытии клиентом окна браузера, в котором отображался вывод еще не завершенного PHP скрипта. Например, скрипт зациклился или пользователь устал ждать конца операции.

<p>Особенность в том, что скрипт будет принудительно завершен, только в момент физического вывода данных, т.е. после сброса буфера, например после отправки большого числа данных или вызова функций ob_flush() и flush(). Если вывода данных клиенту не производится или буфер вывода остается несброшенным, то скрипт так и будет выполняться до истечении времени заданного через параметр настройки PHP - max_execution_time. При этом не важно, в какое значение в конфигурации PHP установлен параметр ignore_user_abort.

<p>В качестве обходного пути для прерывания скриптов в течение длительного времени не производящих вывод данных, например, вследствие выполнения длительного SQL запроса, можно использовать расширение <a href="http://php.net/pcntl">pcntl</a>, вызывая функцию pcntl_alarm(таймаут). В отличие от max_execution_time/set_time_limit, определяющих максимальное время утилизации CPU (при выполнении запросов к SQL серверу процессорное время расходуется минимально и скрипт может оставаться висеть днями), функция pcntl_alarm оперирует секундами реального времени.

URL: http://www.mysqlperformanceblog.com/2008/05/20/apache-php-my.../
Обсуждается: https://www.opennet.ru/tips/info/1675.shtml

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру