Anton Sidorov homepage

Bookmark this to keep an eye on my project updates!

Follow me on GitHub

PHP

Frameworks

Patterns

Реализации паттернов:

Background Job

YII2 queue

мониторинг

выполнения задач

  • некоторые driver, которые поддерживают статус задачи (Redis поддерживает, RMQ - нет)
    • support queue/info
    • GUI queue manager
      • необходима поддержка статуса задач на уровне driver
      • обрабатывает события yii2-queue: startExec, afterExec, afterError
        • в БД хранит статистику
        • repeat, create, delete, find, worker status, duration task
    • статус задач и workers, длительность ожидания в очереди, выполнения задач, кол-во попыток выполнения
      • worker не поддерживаются AMQP driver (Redis поддерживает при запуске в режиме run через cron и периодическом получении задач)
      • обрабатывает события yii2-queue: afterPush, beforeExec, afterExec, afterError, workerStart, workerStop, workerLoop
        • в БД хранит статистику отдельные таблицы: push, exec, worker
        • очистка таблиц статистики
    • failed task handle
      • to DB, file log for driver Redis, DB, Beanstalkd
      • to DB
        • for Any driver?
        • no GUI
        • CLI list, run all\byID, delete

процессов обработчиков очереди задач на уровне supervisord

Laravel

DDD

Message Bus

Паттерн арх-го стиля EDA

Observability

Prometheus format metric:

Configuration