Задача в cron

С
На сайте с 02.05.2011
Offline
6
683

Здравствуйте, возникла проблема, необходимо запускать скрипт каждый раз после его исполнения, пока поставил в cron запуск этого скрипта каждые 10 секунд, но хотелось бы чего-нибудь менее топорного, подскажите куда копать. Заранее спасибо.

[umka]
На сайте с 25.05.2008
Offline
456
#1
Скупщик:
поставил в cron запуск этого скрипта каждые 10 секунд

Эт как? Ноу-хау? Покажите, как выглядит задание :)

Скупщик:
необходимо запускать скрипт каждый раз после его исполнения

Каждый раз, после того, как скрипт отработает, запускать его заново?

А в чём заключается основная задача?

Пишете скриптик, например, на Perl. Он после запуска демонизируется и постоянно висит в ожидании каких-либо событий. Так будет менее топорно.

Лог в помощь!
С
На сайте с 02.05.2011
Offline
6
#2

*/1 * * * * задание; sleep 10; задание; sleep 10; задание; sleep 10; задание

Только первый интервал будет минуту.

Да необходимо чтобы скрипт запускался каждый раз после его исполнения

Скупщик добавил 13.11.2011 в 13:16

Скриптик уже на php и его перепись дело очень долгое хотелось бы чего-нибудь менее кардинального, может быть тоже что-нибудь из cron'а

[umka]
На сайте с 25.05.2008
Offline
456
#3
Скупщик:
*/1 * * * * задание; sleep 10; задание; sleep 10; задание; sleep 10; задание

Жуть какая :)

На php адекватного решения такой задачи не сделать, на то он и php.

Если только не найти другое решение, чтобы не нужно было постоянно перезапускать скрипт.

С
На сайте с 02.05.2011
Offline
6
#4

Эх будь это VPS хотя бы, а не просто хостинг можно было бы и из php работать с cron'ом, всего лишь вставив в конец скрипта пару функций, ладно пойду еще покопаюсь может найду какое-нибудь решение

[umka]
На сайте с 25.05.2008
Offline
456
#5

Вы лучше расскажите, зачем всё-таки нужно постоянно перезапускать скрипт, а кто-нибудь может предложит более красивое решение :)

С
На сайте с 02.05.2011
Offline
6
#6

Концепция такова: скрипт перебирает базу и посылает согласно базе оприделенные запросы другому серверу, после того как данные в базе закончились его и нужно заново запустить, зациклить внутри скрипта нельзя благодаря отключеному set_time_limit(0); вот и встала задача

[umka]
На сайте с 25.05.2008
Offline
456
#7

Т.е. данные должны быть обработаны сразу после добавления в базу?

А почему тогда не повесить обработку в том месте, где происходит добавление?

Ну и если делать вашим способом, то лучше не в задании cron делать 6 запусков и 6 пауз по 10 секунд, а делать один запуск раз в минуту, в нём делать проверку в цикле 6 раз и, после каждой проверки, паузу 10 секунд.

С
На сайте с 02.05.2011
Offline
6
#8

Данные на руках, там просто исходя из этих данных нужно отправлять запросы и редактировать эти данные в зависимости от ответов, в принципе можно и так как вы предложили, наверное так и сделаю спасибо.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий