Я начинаю использовать асинхронные задания / сообщения для выполнения какой-то тяжелой фоновой работы на странице PHP вместо того, чтобы заставлять пользователя сидеть там и ждать его. Пока что я склоняюсь к использованию Beanstalkd поверх RabbitMQ или Amazon SQS, но мой вопрос ниже является более общим и относится ко всем из них:
Лучше ли иметь одного огромного работника в качестве диспетчера для нескольких типов работ?
Или лучше иметь несколько меньших целевых рабочих сценариев на одном сервере?
Вероятно, есть несколько других факторов, о которых я даже не знаю, поэтому любые дополнительные советы будут оценены.
(Если это имеет значение, я планирую демонизировать рабочий сценарий на основе PHP с помощью Supervisor. На данный момент рабочий будет работать только на 1 сервере, но в будущем он может увеличиться до двух …)
Задача ещё не решена.
Других решений пока нет …