Реальное max_execution_time для PHP в Linux

Согласно документации:

max_execution_time only affect the execution time of the script itself. 
Any time spent on activity that happens outside the execution of the script
such as system calls using system(), stream operations, database queries, etc.
is not included when determining the maximum time that the script has been running.
This is not true on Windows where the measured time is real.

Это подтверждено тестированием:

Не будет тайм-аута

query($query) or die($query.'
'.$sql->error); echo "You got the page";

Будет тайм-аут

Наша проблема в том, что мы действительно хотим, чтобы PHP тайм-аут, независимо от того, что это такое выполнение по прошествии определенного времени (поскольку мы не хотим, чтобы ресурсы были заняты, если мы знаем, что не смогли доставить страницу за приемлемое время, например, за 10 секунд). Мы знаем, что можем играть с такими настройками, как MySQL wait_timeoutдля SQL-запросов, но время ожидания страницы будет зависеть от количества выполняемых запросов.

Некоторые люди пытались придумать обходные пути, но они не кажутся реализуемыми.

В: Есть ли простой способ получить реальное PHP max_execution_timeв linux, или нам лучше установить тайминг в другом месте, например на уровне Apache?

5
задан Max 5 April 2012 в 09:18
поделиться