IPB

Здравствуйте, гость ( Вход | Регистрация )

Важные объявления

 
Ответить в данную темуНачать новую тему
> PHP скрипт в фоновом режиме, (очередь сообщений?)
alxander
сообщение 31.1.2009, 9:59    [ Вставить ник в форму быстрого ответа ]
Сообщение #1


Новичок
*

Группа: Новобранец
Сообщений: 3
Регистрация: 30.1.2009
Пользователь №: 1955
Спасибо сказали: 0 раз(а)

Дистрибутив:
FreeBSD



Репутация: 0


Как можно запустить php-скрипт в фоновом режиме?
У меня такая задача: есть список адресов (>5000 штук) и сканер, обходящий эти адреса ежедневно с целью проверки наличия кода. В процессе работы php-скрипта составляется sql запрос, который в конце работы скрипта импортируется в БД (запросы update).

Проблема в двух местах:
1. Много адресов для проверки
2. Каждая проверка адреса занимает ~3 сек.

Пришел к выводу, что без фонового режима не обойтись, но как его реализовать - не знаю, опыта не было. Может, кто подскажет?
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
Зарегистрируйтесь, чтобы скрыть этот рекламный блок.
Kekek
сообщение 31.1.2009, 11:13    [ Вставить ник в форму быстрого ответа ]
Сообщение #2


Новичок
*

Группа: Новобранец
Сообщений: 15
Регистрация: 23.11.2008
Из: Северодонецк
ICQ: 49514382
Пользователь №: 1889
Спасибо сказали: 1 раз(а)

Дистрибутив:
FreeBSD 8.0 | uClinux
Jabber ID:
[email protected]



Репутация: 0


Запустить под screen.
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
Ex3me
сообщение 31.1.2009, 18:12    [ Вставить ник в форму быстрого ответа ]
Сообщение #3


lamer...
****

Группа: Опытные
Сообщений: 401
Регистрация: 7.8.2007
Из: лесу
ICQ: 404554260
Пользователь №: 512
Спасибо сказали: 2 раз(а)

Дистрибутив:
Дома и на работе Ubuntu 9.10, Сервер FreeBSD 7.2, а нравится мне Arch



Репутация: -7


Код
`php /home/www/myscript.php  >/dev/null 2>/dev/null &`;
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
alxander
сообщение 31.1.2009, 18:20    [ Вставить ник в форму быстрого ответа ]
Сообщение #4


Новичок
*

Группа: Новобранец
Сообщений: 3
Регистрация: 30.1.2009
Пользователь №: 1955
Спасибо сказали: 0 раз(а)

Дистрибутив:
FreeBSD



Репутация: 0


Спасибо большое, буду пробовать))
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
gog
сообщение 22.2.2009, 23:13    [ Вставить ник в форму быстрого ответа ]
Сообщение #5


Линуксоид по призванию
Иконка группы

Группа: Скромные боги
Сообщений: 321
Регистрация: 6.11.2005
Из: /usr/home/lde
Пользователь №: 19
Спасибо сказали: 5 раз(а)

Дистрибутив:
Ubuntu 10.10



Репутация: 4


alxander,

Код
crontab -e -u<твой логин>


В твоем редакторе по-умолчанию пишешь что-то такое:

Код
* * * * * /usr/bin/php -q /путь/к/твоему/скрипту.php 1>/dev/null 2>/dev/null


P.S. Естественно меняешь "* * * * *" и "/путь/к/твоему/скрипту.php" на нужные (IMG:http://forum.linux.lg.ua/style_emoticons/default/rolleyes.gif)
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
dip56245
сообщение 23.2.2009, 10:04    [ Вставить ник в форму быстрого ответа ]
Сообщение #6


Programmer
****

Группа: Старейшины
Сообщений: 481
Регистрация: 28.9.2005
ICQ: 82591163
Пользователь №: 2
Спасибо сказали: 2 раз(а)

Дистрибутив:
SuSE
Jabber ID:
[email protected]



Репутация: 2


ну раз пошла такая пьянка, мне больше нравится вариант:
Код
T9:3:respawn:/path/to/script.sh

в 3 ините (когда консольно сервер запущен, для себя можно поставить 345), запускать скрипт script.sh

внутри скрипта что-то типа:
Код
#!/bin/bash

cd /path/to/work/dir
/usr/bin/php5 -q file.php > /var/log/mysoft.log 2> /var/log/mysoft.err


в самом php скрипте, первой строкой:
Код
<?php
set_time_limit(0);
...
?>


таким образом у скрипта не будет "лимита времени на выполнение", будет выводится в лог как обычный stdout, так и stderr.
если скрипт вылетит по какой-то причине, то его система еще раз запустит...

собсно вот.
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
alxander
сообщение 28.2.2009, 14:17    [ Вставить ник в форму быстрого ответа ]
Сообщение #7


Новичок
*

Группа: Новобранец
Сообщений: 3
Регистрация: 30.1.2009
Пользователь №: 1955
Спасибо сказали: 0 раз(а)

Дистрибутив:
FreeBSD



Репутация: 0


Круто, круто) Буду все пробовать, чтобы понять, что для меня удобнее...
Перейти в начало страницы
Вставить ник
+Цитировать сообщение

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 23.7.2019, 3:43    


BonAppetit - кулинарные авторские фоторецепты  ITO-info