Я пытаюсь сделать фоновое задание с помощью php-resque. У меня есть этот код:Функция выполнения функции php-resque не выполнена?
\Resque::setBackend('127.0.0.1:6379');
\Resque::enqueue('default', '\BaseModule\Jobs\Mail', array());
и в классе почты у меня есть этот
class Mail
{
public function perform()
{
lakdf;
}
}
ошибка на "lakdf;" здесь специально.
При включении монитора на моем Redis и попытаться выполнить работу это написать так:
1387283121.312817 [0 127.0.0.1:32827] "set" "resque:worker:michal-pc:9622:default" "{\"queue\":\"default\",\"run_at\":\"Tue Dec 17 12:25:21 UTC 2013\",\"payload\":{\"class\":\"\\\\BaseModule\\\\Jobs\\\\Mail\",\"args\":[[]],\"id\":\"c7c64e218bc951018c2a264eaf5a4b9a\"}}"
1387283121.313312 [0 127.0.0.1:32827] "incrby" "resque:stat:processed" "1"
Так из «reque: стат: обработанном» Я думаю, что моя работа была обработана, но есть ошибка в выполнении функции и ее отсутствие записи каких-либо ошибок, например, выполнение функции никогда не выполняется.
Даже если я сделаю некоторую вставку в базу данных в функции выполнения, он ничего не сделает.
Кто-нибудь знает, где проблема? Почему кажется, что выполнение функции не выполняется?
Какую версию PHPResque вы используете? – mloureiro
У меня есть хороший fealeeng, что ваша функция PHP не поддерживает это или модуль отсутствует. Дайте нам свою версию, пожалуйста. –