Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.14;
Скачать: CL | DM;

Вниз

Вопрос по пхп. Снова   Найти похожие ветки 

 
Nous Mellon_   (2008-07-17 18:14) [0]

Спасибо всем кто мне здесь помогает в моих пхп изысканиях. Есть еще вопрос.

На некотором домене есть пхп скрипт. На другом домене другой пхп скрипт, который должен вызывать первый скрипт. Но тот, что первый достаточно ресурсоемкий и выполняется несколько минут, есть ли возможность просто запустить из второго скрипта первый, но не ждать результатов выполнения, а делать нужные операции дальше? Если например через file_get_contents вызывать то ждет, через exec у меня второй первого вообще не пускает. Посоветуете что-то?


 
McSimm ©   (2008-07-17 18:20) [1]

Если быть корректным, то вы не вызываете первый скрипт, вы делаете HTTP запрос, который принуждает сервер вызвать скрипт. (вызвать тоже можно, но это совсем другая песня).

Таким образом вопрос в том, чтобы сделать запрос и не дожидаться его результатов.

Можно открыв сокет и сделав HTTP запрос.


 
Nous Mellon_   (2008-07-17 19:08) [2]

Да, я как раз пытаюсь сделать через сокеты, но пока не получается


 
speller   (2008-07-17 20:03) [3]

Поиграть с CURLOPT_TIMEOUT и не париться с сокетами?


 
Nous Mellon_   (2008-07-17 20:40) [4]

я бы с радостью, но мне бы хоть кусочек примерного кода


 
Nous Mellon_   (2008-07-22 17:13) [5]

Пытался по разному решить проблему, например мне дали вот такой код в одном месте
---------------------------------
if ($fp = fsockopen("server1.com", 80)
{
fwrite($fp, "GET /path/to/script.php HTTP/1.0\r\n");
fwrite($fp, "Host: server1.com\r\n");
fwrite($fp, "Connection: Close\r\n\r\n");
fclose($fp);
}

2ом скрипте:
ignore_user_abort(1);
set_time_limit(0);
--------------------------------------
но к сожалению 2й скрипт умирает через через 20-30 секунд. Что посоветуете?


 
ketmar ©   (2008-07-22 18:07) [6]

>[5] Nous Mellon_ (2008-07-22 17:13:00)
>Что посоветуете?

отключить safe mode, афаир. в оном safe mode memory и time limits несколько ограничены.

---
Understanding is not required. Only obedience.


 
Eraser ©   (2008-07-22 19:38) [7]

> [0] Nous Mellon_   (17.07.08 18:14)

да, самое общее решение это [6], но на дешевых виртуальных хостингах обычно ограничение убрать нельзя, в случае если есть морда (результат выполнения отображается в браузере) обычно делают через джава скрипт с перезагрузкой страницы через определенный интервал времени.


 
speller   (2008-07-22 19:54) [8]

Я так понял, что удаленный скрипт перестал выполняться до конца? Может, разбить долгую задачу на несколько? Запрос 1 выполняет некоторую часть, готовит данные для следующей стадии и при выходе запускает с этими данными следующий этап. И так далее. И ничего не будет отваливаться.


 
Zeqfreed ©   (2008-07-22 19:59) [9]

Запускай отдельный процесс на втором сервере вторым скриптом и сразу завершай его.


 
ketmar ©   (2008-07-22 20:17) [10]

>[9] Zeqfreed © (2008-07-22 19:59:00)
safe mode не даст. %-)

---
All Your Base Are Belong to Us


 
ketmar ©   (2008-07-22 20:17) [11]

>[6] ketmar © (2008-07-22 18:07:00)
алсо, «ограниченые limits» — это я круто сказанул.

---
Understanding is not required. Only obedience.


 
Zeqfreed ©   (2008-07-22 20:42) [12]

> ketmar ©   (22.07.08 20:17) [10]

safe_mode_exec_dir


 
Nous Mellon_   (2008-07-24 18:39) [13]

Ребят, спасибо всем, особенно speller, с лимитами парится на стал, просто сделал скрипт итерационным и все ок, но одна проблема -- через курл отлично работает, а через сокеты нет, просто не запускается скрипт при коннекте через сокеты. Причем fsockopen удачно завершается. Очень хотелось бы без курла решить, может есть варианты?



Страницы: 1 вся ветка

Текущий архив: 2008.09.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.028 c
3-1205492132
LoDr
2008-03-14 13:55
2008.09.14
Firebird, узнать имя сервера


15-1216620114
Vlad Oshin
2008-07-21 10:01
2008.09.14
Постоянно в памяти висит процесс WinWord.exe


15-1216971984
Lamerenok
2008-07-25 11:46
2008.09.14
Как установить Fastnet пакет ?


4-1196163825
delpher_g
2007-11-27 14:43
2008.09.14
Как программно замедлить скорость вращения CD-ROMа


13-1120576971
Anatoly Podgoretsky
2005-07-05 19:22
2008.09.14
С днем рождения