Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Фоновый процесс php
|
|||
|---|---|---|---|
|
#18+
Всем привет. У меня есть php-скрипт, время выполнения которого 2-4 часа в зависимости от нагрузки сервера. Естественно, выполнять его через браузер нельзя, так как скотпт отваливается по timeout (как, собственно и браузер). Поэтому я еговыполняю через unix-shell командой php <имя файла>. И все отрабатывает. Вопрос в следующем - как можно из web с породить этот php процесс, который будет выполняться в фоне без timeout-а? В браузере с помощью Ajax буду следить за ходом выполнения. Я нашел 2 варината: 1. Функция exec(). Но основной скрипт, из, которого она вызывается, ждет его завершения, в итоге отваливается по timeout. К тому же, браузер висит и ждет ответа. 2. Функция pcntl_fork(). Она порождает дочерний процесс, но у нее есть timeout. Может ли многоуважаемый ALL подсказать, как решить мою задачу? Может, у вышеописанных функций есть какие-то параметры, выполняющие эту задачу или есть еще варианты? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2013, 21:59 |
|
||
|
Фоновый процесс php
|
|||
|---|---|---|---|
|
#18+
Скриптом генерите файлик с заданием, флагом выполнения и еще чем... Скрипт по крону запускайте ежеминутно или пореже... Первым делом проверка на уже запущенный экземпляр, затем чтение задания и выполнение. Если экземпляр уже запущен или нет задания - завершаем работу. Результаты работы (в том числе и промежуточные) писать тоже в файл. Впрочем, вместо файлов можно и БД использовать. Ну а из браузера через скрипты уже взаимодействуйте с этими файлами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2013, 22:36 |
|
||
|
Фоновый процесс php
|
|||
|---|---|---|---|
|
#18+
http://www.php.net/manual/en/function.set-time-limit.php http://www.php.net/manual/en/function.ignore-user-abort.php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2013, 01:54 |
|
||
|
Фоновый процесс php
|
|||
|---|---|---|---|
|
#18+
ScareCrow http://www.php.net/manual/en/function.set-time-limit.php] http://www.php.net/manual/en/function.set-time-limit.php http://www.php.net/manual/en/function.ignore-user-abort.php] http://www.php.net/manual/en/function.ignore-user-abort.php Случайно закрой браузер и начни все сначала :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2013, 08:26 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=116&tid=1463958]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 251ms |
| total: | 395ms |

| 0 / 0 |
