Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Регулярный запуск скрипта (Kedrian)
Author Message
Kedrian
Участник форума
Warnings: 1


Joined: 08 May 2010
Posts: 23
Карма: -5
   поощрить/наказать


PostPosted: Mon Jul 26, 2010 11:24 pm (написано за 2 минуты 58 секунд)
   Post subject: Регулярный запуск скрипта
Reply with quote

Нужно каждые 5с(или даже чаще) запускать некоторые файлы скрипта. Крон,как я понимаю,не подходит,т.к. его можно настроить минимум на 1 мин. Подскажите,пожалуйста,чем можно воспользоваться?
Back to top
View user's profile Send private message
Миша Спларов
Участник форума



Joined: 17 Nov 2003
Posts: 821
Карма: 65
   поощрить/наказать

Location: Россия, Москва

PostPosted: Tue Jul 27, 2010 6:15 am (спустя 6 часов 51 минуту; написано за 16 секунд)
   Post subject:
Reply with quote

Бесконечный цикл со sleep.
Back to top
View user's profile Send private message
Kedrian
Участник форума
Warnings: 1


Joined: 08 May 2010
Posts: 23
Карма: -5
   поощрить/наказать


PostPosted: Tue Jul 27, 2010 9:57 am (спустя 3 часа 41 минуту; написано за 3 минуты 29 секунд)
   Post subject:
Reply with quote

Миша СпларовТоесть каждую минуту запускать кроном скрипт с бесконечным циклом со sleep,а уже в цикле будут выполняться нуные обновления системы? Я об этом думал,но на практике еще не использовал..
Back to top
View user's profile Send private message
Миша Спларов
Участник форума



Joined: 17 Nov 2003
Posts: 821
Карма: 65
   поощрить/наказать

Location: Россия, Москва

PostPosted: Tue Jul 27, 2010 10:06 am (спустя 9 минут; написано за 38 секунд)
   Post subject:
Reply with quote

Тогда нужно не забыть прервать скрипт по истечении минуты, чтобы два разных скрипта не делали одну и ту же работу.
Back to top
View user's profile Send private message
Kedrian
Участник форума
Warnings: 1


Joined: 08 May 2010
Posts: 23
Карма: -5
   поощрить/наказать


PostPosted: Tue Jul 27, 2010 10:57 am (спустя 50 минут; написано за 1 минуту 48 секунд)
   Post subject:
Reply with quote

Миша Спларов Это да. Но вот еще что. Пользуюсь хостингом,думаю,там стоит максимальное время выполнения скрипта меньше минуты. Это как обойти?
Back to top
View user's profile Send private message
dimagolov
Участник форума



Joined: 04 Feb 2007
Posts: 1664
Карма: 96
   поощрить/наказать

Location: Christ Church, Barbados

PostPosted: Tue Jul 27, 2010 4:27 pm (спустя 5 часов 29 минут; написано за 1 минуту 27 секунд)
   Post subject:
Reply with quote

Kedrian wrote:
Пользуюсь хостингом,думаю,там стоит максимальное время выполнения скрипта меньше минуты.
Время исполнения обычно ограничивается для скриптов, запускаемых веб-сервером. Скрипты, запускаемые через CLI (а именно так их запускает cron), не имеют ограничения по времени исполнения, по крайней мере по умолчанию: www.php.net/manual/en/info.configuration.php#ini.max-execution-time
Back to top
View user's profile Send private message
Ivan1986
Участник форума
Warnings: 2


Joined: 09 Oct 2007
Posts: 807
Карма: 38
   поощрить/наказать


PostPosted: Thu Jul 29, 2010 11:28 am (спустя 1 день 19 часов 1 минуту; написано за 2 минуты 52 секунды)
   Post subject:
Reply with quote

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

Примерно так
Code (php): скопировать код в буфер обмена
class ...
        /*
        static (www.php.net/static) public function doubleRun($name, $message='')
        {
                static (www.php.net/static) $lockfiles;
                if (!isset (www.php.net/isset)($lockfiles[$name]))
                        $lockfiles[$name] = fopen (www.php.net/fopen)(TMPPATH.'/'.$name.'.run', 'w');
                if (!$lockfiles[$name] ||
                        !flock (www.php.net/flock)($lockfiles[$name], LOCK_EX | LOCK_NB)
                        )
                        die (www.php.net/die)($message);
        }
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML