Мне нужна система очереди, которая работает максимально быстро, но не замедляет работу сервера.
У меня есть веб-приложение (php), которое конвертирует различные фрагменты мультимедиа (фотографии, видео и т. Д.). Когда кто-то хочет преобразовать файл, команда для преобразования помещается в базу данных. Мне нужна программа, которая может выполнять команды таким образом, чтобы мой сервер не зависал.
Мне нужно следующее:
-Что-то, что всегда работает на сервере.
-Поиск базы данных postgres для нового контента
-Программа переходит к следующей команде в базе данных после завершения предыдущей команды
-Когда команда завершает, она обновляет таблицу postgres либо с успехом / неудачей и с отметкой времени
-Программа должна использовать столько процессоров, сколько необходимо, но не быть приоритетом ... Я хочу, чтобы процесс был быстрым, но я не хочу, чтобы мой сервер остановился.
-Программа должна иметь возможность ограничивать различные программы (поэтому, если приложение 1 запущено, и кто-то отправляет заявку на приложение 2 ... приложение 2 не запускается, если сервер не может его обработать).
Кто-нибудь знает существующие сценарии или идеи? Я играл с cpulimit, но это только ограничивает его, не позволяя серверу использовать весь свой потенциал, когда нет нагрузки на сервер. Я пробовал -nice -n, но это не похоже на работу.