Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Бесконечный цикл для запуска скрипта
 
 автор: svk1be   (29.10.2007 в 18:18)   письмо автору
 
 

Здарстуйте,..

Вообщем я солкнулся со следующей проблемой.
У возникла потребность запускать один и тотже PHP скрипт для обновления базы данных бесконичное количество раз. Организовал я это запуском BASH скрипта со следующим кодом:

#!/bin/sh
while :
do
sudo -u welc /usr/bin/php -f /home/welc/public_html/US_welc/welc_updater.php
done

где welc_updater.php - скрипт обновления базы, а sudo -u welc означает, что скрипт будет запускаться из под юзера welc.

В какой то момент (немогу его словить, обычно через сутки-двое) PHP скрипт напросто зависает.

Логи ничего не выводят..:(

Вот и незнаю че это может быть :(

Посоветуйте плиз..

   
 
 автор: cheops   (29.10.2007 в 18:42)   письмо автору
 
   для: svk1be   (29.10.2007 в 18:18)
 

А скрипт сам по себе долго выполняется?

   
 
 автор: svk1be   (29.10.2007 в 18:49)   письмо автору
 
   для: cheops   (29.10.2007 в 18:42)
 

Ну около 15-20 минут..

   
 
 автор: cheops   (30.10.2007 в 11:30)   письмо автору
 
   для: svk1be   (29.10.2007 в 18:49)
 

Может проще по cron запускать скрипт через каждые 20 минут?

   
 
 автор: KPETuH   (30.10.2007 в 11:54)   письмо автору
 
   для: svk1be   (29.10.2007 в 18:18)
 

бесконечный цикл грозит большой нагрузкой на сервер...

   
 
 автор: pina_   (30.10.2007 в 13:58)   письмо автору
 
   для: KPETuH   (30.10.2007 в 11:54)
 

У меня такое было, когда надо очень большой инфы переработать, сервак приостановил работу скрипта и минут через 10 начал опять его доделывать с предыдущей позиции.

Думаю грузить сервак ТАК как ты описал, бессмысленно, и не эффективно.

А для чего собственно это ты делаешь?

   
 
 автор: svk1be   (30.10.2007 в 16:20)   письмо автору
 
   для: pina_   (30.10.2007 в 13:58)
 

Вообщем скрипт не очень напряжный для сервера.. Он бегает по пару сотень сервакам и соберает всякую инфу которую потом заносит в базу. Но проблема состоит в отм что он должен повторно запускаться сразу по своему завершению.. В этом и вся проблема. Так бы я его уже давно в крон добавил. И отрабатываться он может до часа в некоторых случаях, когда проблема, скажем, с роутингом (разные подсетки). Сервер он не грузит вообще, а вот по какой причине он может останавливаться.. вот это уже интерестно.

   
 
 автор: mihdan   (30.10.2007 в 22:07)   письмо автору
 
   для: svk1be   (30.10.2007 в 16:20)
 

В настройках сервера есть ограничение на время выполнения сценария

   
 
 автор: ddhvvn   (30.10.2007 в 22:19)   письмо автору
 
   для: mihdan   (30.10.2007 в 22:07)
 

Для настройки времени выполнения используйте функцию set_time_limit()

   
 
 автор: Unkind   (30.10.2007 в 23:36)   письмо автору
 
   для: svk1be   (30.10.2007 в 16:20)
 

Интересно, а какую такую "всякую инфу" собирает Ваш сервер?

   
 
 автор: Sobachka   (31.10.2007 в 01:45)   письмо автору
 
   для: svk1be   (30.10.2007 в 16:20)
 

а почему бы не вписать цикл в сам скрипт. т.е. while(true) вписать в пхп...

   
 
 автор: svk1be   (18.01.2008 в 22:36)   письмо автору
 
   для: Sobachka   (31.10.2007 в 01:45)
 

Потому что этот скрипт подключает изменяемый конфиг, который меняеться время от времени, а если я поставлю while в скрипте, то файл подключиться один раз и переменные не будут обновляться. Ну допустим эту проблему можна решить если занести конфиг в базу, то как на счет max_execution_time or memory limit.. если за один цыкл скрипт обрабатывает до 20 метров инфы.

Спс

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования