[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: 504 Gateway Time Out
Jimmbo
В общем мой скрипт парсит не ограниченное кол-во сайтов.
Однако на деле скрипт работает нормально, когда парсит до 50 сайтов.

На хостинге стоит ограничение ожидания ответа от сервера,
точно не скажу сколько. Писал в саппорт, говорят редактировать нельзя.

Так вот, скрипт - while на одной странице.
Как можно его разбить так, чтобы времени хватило?

Пробовал по 10 сайтов парсить, затем header на новую страницу,
там еще 10 и т.д. Но ошибка 504 коварна. Как же быть? unsure.gif



Спустя 2 часа, 12 минут, 24 секунды (22.08.2012 - 20:38) killer8080 написал(а):
Jimmbo
кто же такие скрипты браузером стартует? rolleyes.gif
В консоли время выполнения скрипта не ограничено, а вообще, подобные задачи надо распараллеливать.

Спустя 29 минут, 13 секунд (22.08.2012 - 21:07) Jimmbo написал(а):
Цитата
а вообще, подобные задачи надо распараллеливать.

Каким образом?

Цитата
Но ошибка 504 коварна.

Решил проблему - скрипт обрабатывает 10 сайтов, перенаправляет
на страницу, в которой в META теге ридерект обратно.

Спустя 2 часа, 31 минута, 24 секунды (22.08.2012 - 23:39) killer8080 написал(а):
Цитата (Jimmbo @ 22.08.2012 - 22:07)
Цитата
а вообще, подобные задачи надо распараллеливать.


Каким образом?

В идеале форками, если недоступно, то костылями в виде гет запросов.
Цитата (Jimmbo @ 22.08.2012 - 22:07)
Решил проблему - скрипт обрабатывает 10 сайтов, перенаправляет
на страницу, в которой в META теге ридерект обратно.

Фиговый вариант. Сервер находится в жесткой зависимости от клиента.

Спустя 19 часов, 2 минуты, 45 секунд (23.08.2012 - 18:42) Jimmbo написал(а):
Фиговый вариант. Сервер находится в жесткой зависимости от клиента.

Я любитель, до этого варианта я в душе додумался... :D
Другого в упор не вижу :unsure:

Цитата
то костылями в виде гет запросов.

Примерно так, только сессия возвращает значение, на котором остановились.

Спустя 2 дня, 23 часа, 51 минута, 12 секунд (26.08.2012 - 18:33) phpdreamer написал(а):
Цитата
Пробовал по 10 сайтов парсить, затем header на новую страницу,
там еще 10 и т.д. Но ошибка 504 коварна. Как же быть? unsure.gif

обработать ошибку 504
В функции curl_getinfo например есть "http_code", который можно проверять.
Если Вы имеете ввиду что 504 происходит на вашем хостинге, то снижайте нагрузку (функцией sleep) или меняйте хостинг.
Я бы посоветовал парсить на локальном сервере - там можно поставить максимальное время выполнения неограниченным.


_____________
Оскорбления — это обычные доводы тех, кто неправ @ Жан-Жак Руссо
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.