Jump to content
Sign in to follow this  
cecilb

Время выполнения shell скрипта

Recommended Posts

Для выполения задач на веб-сервере более часто, чем это позволяет CRON, возникла идея запуска shell скрипта, который, в свою очередь, будет с заданной периодичностью вызывать PHP скрипт, который будет работать с базой данных.

Собственно вопрос заключается вот в чем: будет shell ли скрипт продолжать работать, если пользователь, запустивший его, выйдет из системы? Скорее всего, провайдер не разрешит запуск чего-либо от имени root, а только от имени пользователя - накладывает ли это какие-то ограничения?

В Shell скрипте будет запрограммирован бесконечный цикл, и запуск скрипта в идеальном случае должен произойти один раз.

Share this post


Link to post
Share on other sites

Цитата:

более часто, чем это позволяет CRON

Это насколько часто? Крон умеет запускать задачи раз в минуту? Неужели надо чаще? И это для php и работе с бд? Вы уверены, что скрипт успеет отработать?

Share this post


Link to post
Share on other sites

По сути, если определять задачи для CRON, потребуется 24*60*365 задач, чтобы обеспечить ежеминутный запуск.

Один shell-сценарий решил бы это, как я описал.

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

Share this post


Link to post
Share on other sites

Если вы запустите скрипт и закроете консоль - скрипт сдохнет. Вам надо делать демона. Но вряд ли хостеру понравится, что вы у него что-то там повесите и он ваш процесс прибьёт. Не говоря о том, что если ваш скрипт застопорится и получится куча процессов - вас просто выгонят.

Share this post


Link to post
Share on other sites

Спасибо за ответ.

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

Или, может быть, кто-то посоветует более простое решение?

Share this post


Link to post
Share on other sites

CecilB писал(а) Sat, 15 January 2011 23:36

Спасибо за ответ.

Но и создать 525600 крон-задач хостер тоже не позволит.

Откуда такое число? Если нужно запускать с разными параметрами, то по крону запускается один скрипт каждую минуту, а параметры задаются уже внутри скрипта.

Цитата:

Получается, придется действительно писать своего демона.

Можно cкрипт запустить, отсоединив его от консоли (&), или даже от пользовательской сессии (screen). Даемон на си, конечно, быстрее и надежнее, но есть ли смысл во всем этом только для запуска пыха...

Цитата:

Или, может быть, кто-то посоветует более простое решение?

Куда еще проще.

Не пробовали на чем-либо, кроме пыха писать? Он, говорят, мозги атрофирует.

Share this post


Link to post
Share on other sites

Цитата:

Откуда такое число? Если нужно запускать с разными параметрами, то по крону запускается один скрипт каждую минуту, а параметры задаются уже внутри скрипта.

Спасибо, попробую.

Цитата:

Не пробовали на чем-либо, кроме пыха писать? Он, говорят, мозги атрофирует.

А что, по моим сообщениям можно сделать вывод, что у меня мозг атрофировался? Или я юмора не понял?

Если интересует, я пишу на C++, Java, Perl, PHP, VB - это что-то меняет?

Если бы я был всезнающим специалистом по Linux, то не обращался бы за советом.

Share this post


Link to post
Share on other sites

Извиняюсь за неумелую шутку.

Просто ваша арифметика и php у меня в мозгу как-то ассоциировались.

Знать всего, безусловно, невозможно.

(Немного флейма)

Вот и я недавно две недели убил, пытаясь настроить уиндовс 7 (У меня, слава Богу, осталось меньше десятка машин с вендой). Крутится курсор мыши после ввода пароля, пока ее тупо не перезагрузишь. Служба поддержки глубокомысленно молчит.

Оказазось банально: это "чудо" хотело при вводе сетевого пароля зачем-то связаться с МС (www.msftncsi.com) и для этого авторизовывалось на моем прокси под "левым" именем (на сомом деле имя компьютера). Разрешил связаться с хозяевами - заработала. Неужто такое поведение где-то описано?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...