Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Выполнение скрипта в фоновом режиме
Сообщения
DenSBK

Привет ребят. Вот сделал себе видеозаписи но есть одно но!
При загрузки видеоролика оно автоматом конвертируется в несколько форматов (зависит от формата загружаемого ролика).
И при этой самой же загрузки появляются проблемы. А именно когда загружаеш файл идет обработка видео конвертером и этим самым когда исходник ролика уже лежит на сервере то страница продолжает грузится дальше пока ролик не сконвертируется доконца в нужные форматы.
Вот собстенно сам вопрос. Каким оброзом можно запустить определенный скрипт (файл) в фоновом режиме?
Тоесть чтобы ролик загрузился и упал исходник на сервер и юзера без всяких задержек перекинуло на страницу с этим видео но при этом чтобы процесс обработки не останавливался.
Пробывал всякие варианты но файл который должен вызыватся в фоне и обрабатывать ролик не вызывается.

16 Янв 2013, 1:41
SL_NeKrOmAnT

Мне кажется это тяжело сделать, если вообще реально
Даже в вк некоторое время видео загруженное недоступно, в связи с обработкой.

16 Янв 2013, 14:10
Веселье

через cron нельзя?

16 Янв 2013, 14:16
SL_NeKrOmAnT

Ты походу не понял  Или я не так понял

16 Янв 2013, 14:21
mazaHELL

посмотри как в вк-качалках реализован механизм закачки песни на сайт с серверов вк в фоновом режиме

16 Янв 2013, 16:24
SL_NeKrOmAnT

Скорее всего функцией copy() потому что если она вызвана, она так и будет скачивать пока не скачает.

16 Янв 2013, 18:19
mixlion

На хостинге только через сокеты/curl + timeout. Посылаешь запрос на скрипт, который скачает все, а твоя текущая страница соответственно не будет ждать результата.

16 Янв 2013, 19:16
DenSBK

mixlion, Вот именно по принципу поисковиков и пытался сделать. Но скрипт не вызывается. Вот код который вызывается в поиске видео:
[php:1:87ae5b12f8]$output = runExternal('php -f ' . dirname(__FILE__) . '/run.php ' . $query['id'] . ' >/dev/null 2>/dev/null &', &$code );[/php:1:87ae5b12f8]
Пробывал себе засунуть не вызывается он!
добавлено спустя 4 минуты:
SL_NeKrOmAnT, Ты наверно не понял! Про контакт. Там видео загружается и отправляется на обработку.
Впринципе что мне и надо сделать! Но там оно загрузилось форма загрузки пропала и все больше ничего не происходит и видео обрабатывается.
Появляется в списке после обработки. А у меня форма не пропадает.
Тоесть Гружу видеоролик но страница продолжает грузится до тех пор пока видео не обработается хотя исходный файл уже на сервере лежит!
А надо чтобы его просто залило на сервер и перекинуло на другую страницу например с тойже надписью "Ролик успешно загружен и отправлен на обработку".
И все далле пользователь либо грузит еще ролик, либо пошел гулять по сайту тем самым процесс обработки видео не прирывается.

16 Янв 2013, 19:56
Gemorroj

почитай тут http://sergey89.ru/notes/php-multi-threaded-daemon-part-one/
приведенный тобой код - это какая-то обертка над exec. Проще всего, действительно, использовать его.


__________
посл.ред. 16 Янв 2013, 22:43; всего 1 раз 16 Янв 2013, 21:04
DenSBK

Gemorroj, Спасибо почитаю на досуге)

16 Янв 2013, 22:32
Ответить на тему