1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/flc1125-php-queue

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Очередь сообщений PHP+Redis

Среда

  • PHP >= 5.4
  • composer

Установка

composer require flc/php-queue

Пример использования

Producer:

/**
 * Создание задачи
 */
require_once __DIR__ . '/bootstrap.php';

use Flc\Queue\Manager;
use Jobs\Demo;

// Создание работы
$demo = new Demo('Тестирование');

// Отправка в очередь
for ($i = 0; $i <= 100; $i ++) {
    Manager::instance()->push($demo);
}

echo Manager::instance()->count();

Consumer:

/**
 * Исполнитель задач (постоянный)
 */
require_once __DIR__ . '/bootstrap.php';

use Flc\Queue\Manager;
use Jobs\Demo;

if ('cli' !== php_sapi_name()) {
    die('Необходимо запускать в режиме командной строки');
}

while (true) {
    // Извлечение задачи из очереди
    $job = Manager::instance()->pull();

    // Если нет задачи, то пауза на 2 секунды
    if (! $job) {
        sleep(2);
        continue;
    }

    try {
        call_user_func_array([$job, 'handle'], []);
    } catch (Exception $e) {
        echo $e->getMessage();
    }
}

Лицензия

MIT

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/flc1125-php-queue.git
git@api.gitlife.ru:oschina-mirror/flc1125-php-queue.git
oschina-mirror
flc1125-php-queue
flc1125-php-queue
master