1. В расписание добавлен скрипт,который проверяет каждую запись из бд. Проверка одной записи занимает максимум 15 секунд,записей около 500
max_execution_time =30 сек
set_time_limit(0); даёт лишь доп 30 сек( скрипт 1минуту выполняется и дохнет)
посоветуйте каким образом можно проверить все 500 записей
2. если после проверки записи каждый раз вызывать set_time_limit(25); то будет ли эффект? или можно только 1 раз?
Спустя 3 минуты, 15 секунд (19.06.2009 - 19:04) glock18 написал(а):
Цитата |
Проверка одной записи занимает максимум 15 секунд |
почему так долго?
Цитата |
set_time_limit(0); даёт лишь доп 30 сек( скрипт 1минуту выполняется и дохнет) |
у хостера может быть ограничение установлено.
в чем заключается проверка? на мой взгляд, она должна занимать в 1000 раз меньше времени из расчета на запись.
Спустя 43 секунды (19.06.2009 - 19:04) kirik написал(а):
Цитата (leray @ 19.06.2009 - 11:00) |
Проверка одной записи занимает максимум 15 секунд |
Что за? Там у тебя что, происходит проверка контрольной суммы DVD диска, который записан в поле БД?
set_time_limit(0); делает выполнение скрипта неограниченным по времени. Изменение этой опции может банить хостер. Но я тебе настоятельно посоветую пересмотреть 15-ти секундную проверку записи..
Спустя 44 секунды (19.06.2009 - 19:05) kirik написал(а):
glock18 шустрый
Спустя 1 минута, 14 секунд (19.06.2009 - 19:06) glock18 написал(а):
kirik, ты тоже мы тут с тобой одновременно одно и то же постим, как я посмотрю сейчас
Спустя 1 минута, 15 секунд (19.06.2009 - 19:08) leray написал(а):
)))
записи - содержат прокси
проверка - проверка прокси(таймаут 15сек)
п.с. оперативно, однако)
скорее всего так и сделано у хостера,но какие у меня есть альтернативы,чтобы можно было проверить все прокси? ))
записи - содержат прокси
проверка - проверка прокси(таймаут 15сек)
п.с. оперативно, однако)
скорее всего так и сделано у хостера,но какие у меня есть альтернативы,чтобы можно было проверить все прокси? ))
Спустя 2 минуты, 17 секунд (19.06.2009 - 19:10) glock18 написал(а):
даа... вот в такие моменты задумываешься о всяких асинхронных запросах и многопоточности... в C это было бы довольно просто, а вот в php. я где видел реализацию многопоточности. советую покопать в этом направлении тогда. или поискать что-нибудь про асинхронные запросы в php. я, к сожалению, никогда их не использовал и не видел в php, но мало ли? в принципе, вещь очень нужная и полезная.
я тут погуглил... попробуйте SOAP. может он подойдет?
я тут погуглил... попробуйте SOAP. может он подойдет?
Спустя 4 минуты, 5 секунд (19.06.2009 - 19:14) leray написал(а):
Цитата (glock18 @ 19.06.2009 - 16:10) |
даа... вот в такие моменты задумываешься о всяких асинхронных запросах и многопоточности... в C это было бы довольно просто, а вот в php. я где видел реализацию многопоточности. советую покопать в этом направлении тогда. или поискать что-нибудь про асинхронные запросы в php. я, к сожалению, никогда их не использовал и не видел в php, но мало ли? в принципе, вещь очень нужная и полезная. |
тем не менее проблема с временем останеться, с 200-300 потоками наврятли хостер будет рад
пошёл гуглить и я
Спустя 57 секунд (19.06.2009 - 19:15) kirik написал(а):
Цитата (glock18 @ 19.06.2009 - 11:10) |
я где видел реализацию многопоточности. советую покопать в этом направлении тогда. или поискать что-нибудь про асинхронные запросы в php |
Про многопоточность можно тут посмотреть. А по данной теме.. Я бы использовал для проверки cURL и тогда с ним наверное можно использовать curl_multi_init(), но не уверен.
Спустя 2 минуты, 58 секунд (19.06.2009 - 19:18) glock18 написал(а):
Цитата |
тем не менее проблема с временем останеться, с 200-300 потоками наврятли хостер будет рад |
ну потоки - это один скрипт.
а вот что я мог неправильно понять, так это то, что я решил, что проверка проходит не на твоем хосте. то есть ты просто отправляешь запрос куда-то (точно не знаю как прокси проверяются). его кто-то обрабатывает или еще чего-то с ним делают. и тебе посылают ответ. так? или все таки обработка на твоем же хосте?
Спустя 33 минуты, 39 секунд (19.06.2009 - 19:52) leray написал(а):
Цитата (glock18 @ 19.06.2009 - 16:18) | ||
ну потоки - это один скрипт. а вот что я мог неправильно понять, так это то, что я решил, что проверка проходит не на твоем хосте. то есть ты просто отправляешь запрос куда-то (точно не знаю как прокси проверяются). его кто-то обрабатывает или еще чего-то с ним делают. и тебе посылают ответ. так? или все таки обработка на твоем же хосте? |
на моём же хосте,мой же скрипт через cUrl и проверяет)
Спустя 5 минут, 45 секунд (19.06.2009 - 19:57) leray написал(а):
а есть ли альтернативы так,чтобы поочерёдно проводилась проверка прокси?
к примеру,такой вариант
запускается скрипт, проверяет 1 проксю вызывает себя снова,опять проверяют следующую проксю и вызывает себя ещё раз
и так до конца
только с условием,чтобы на каждое выполнение скрипта отводилось 30сек,
первый запуск -30с, второй запуск 30с,и т.к. далее
и сообственно вопрос,как из выполняющегося скрипта,вызвать другой скрипт,т.к. чтобы ему дались новые 30секунд для своего завершения?
к примеру,такой вариант
запускается скрипт, проверяет 1 проксю вызывает себя снова,опять проверяют следующую проксю и вызывает себя ещё раз
и так до конца
только с условием,чтобы на каждое выполнение скрипта отводилось 30сек,
первый запуск -30с, второй запуск 30с,и т.к. далее
и сообственно вопрос,как из выполняющегося скрипта,вызвать другой скрипт,т.к. чтобы ему дались новые 30секунд для своего завершения?
Спустя 10 минут, 44 секунды (19.06.2009 - 20:08) kirik написал(а):
Во, нашел. Неплохой выход в твоей ситуации.
Спустя 4 минуты, 14 секунд (19.06.2009 - 20:12) leray написал(а):
Цитата (kirik @ 19.06.2009 - 17:08) |
Во, нашел. Неплохой выход в твоей ситуации. |
мерси) попробую
печально,после теста выяснил,что если выполняется крон задача, header() (location,redirect) не переадресовывают на новую страницу, зато в браузере всё окей
снова вернулся в каменный век, есть ещё варианты,как вызвать выполнение нового скрипта,так чтобы для нового скрипта отводилось ещё 30сек? + пригодное для использование в кроне
Спустя 1 день, 1 минута, 37 секунд (20.06.2009 - 20:14) Guest написал(а):
мб ещё идейки есть?
Спустя 1 час, 11 минут, 10 секунд (20.06.2009 - 21:25) kirik написал(а):
Может тебе проще будет использовать не php в данном случае? Написать bash скрипт, и запускать его (если хостер не против).