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

OSCHINA-MIRROR/664712890-PHP-Redis-Queue

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

Очередь PHP Redis

Это расширяемый процессор очередей без использования фреймворков. В нашем проекте используется фреймворк Yii, поэтому все тестовые примеры здесь написаны в соответствии с этим фреймворком.

Краткий обзор дизайна

  1. Входящие данные распределяются между 64 списками Redis, что позволяет легко масштабировать систему для увеличения нагрузки.
  2. На заднем плане работает основной процесс PHP, который форкает 64 подпроцесса для обработки данных в каждом из 64 списков.
  3. Основной процесс отслеживает состояние подпроцессов и при нормальном завершении или аварийном прекращении работы подпроцесса немедленно запускает новый экземпляр этого подпроцесса.

Текущее положение дел

В нашем проекте используется уже более года, показывая отличные характеристики производительности и надежности. Сейчас мы работаем с одним компьютером, запустившим 64 процесса. Поскольку текущая производительность одного компьютера удовлетворяет наши потребности, мы не провели больше работы по распределению задач среди нескольких машин.

Разработка и использование

Использование аналогично test/QueueCommand.php, где представлено три команды: start, stop, restart. Для независимых от Yii проектов можно использовать этот файл как образец для написания кода. test/queue_config.php — это конфигурационный файл, который следует просмотреть перед использованием.## Установка пути конфигурационного файла

// Конфигурация для Yii:
Yii::app()->params->queueConfig;

// Общая конфигурация:
QueueConfig::$configPath = '/data/www/test/queue_config.php';

Создание своего worker-обрабатчика

Смотрите src/worker/CWorkerForYii.php. Наследуйте от CWorker и реализуйте необходимые методы. Конечно, вам также потребуется указать имя вашего класса в конфигурационном файле: 'WORKER' => 'CWorkerForYii',

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

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

Введение

Очередь в PHP+Redis. Развернуть Свернуть
Отмена

Обновления

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

Участники

все

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

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