Контроль очереди работы с linux+apache+ffmpeg+php+mysql

Выполняя обращение к ffmpeg через excec() php как контролировать очередь и расход ресурсов сервера? Или самому рассчитать нагрузку и писать простенькую систему очереди - допустим в таблицу залил задачи и поочередно обрабатываешь? linux+apache+php+mysql, кто сталкивался с такой задачей и поймал грабли? где тонкий лед?


Ответы (1 шт):

Автор решения: eri

Не используйте базу данных как брокер задач. Запустите RabitMQ или Kafka.

Дальше Вам делите текущий код пополам. В первой части записывайте задачи в очередь. Например после сохранения файла на диск отправляете в очередь его путь.

Во второй части кода подготовьте несколько воркеров, (обычно число ядер +1). Несколько потоков или процессов одной программы забирают задания из очереди и выполняют. Там или вайл тру или сервис с перезапуском.

→ Ссылка