Фон
У меня есть веб-приложение, которое создаст изображение с пользовательского ввода. Создание изображения может занять пару секунд.Требуется ли для этого веб-приложения очередь задач?
Проблема
Если я позволяю нить сервер, который обрабатывает запрос/ответ также формирования изображения, который собирается связать нить в течение нескольких секунд, и, возможно, увязнуть мой сервер, влияют на производительность , убивают щенков и т.д.
Вопрос
Должен ли я использовать очереди задач, таких как Celery, так что сервер может передавать создание изображения, и вернуться к обработке запросов/ответов? У меня нет проблем с тем, чтобы пользователь, создающий изображение, подождал, но я не хочу, чтобы он влиял на доступ других людей к сайту.
+1: И ... если вы используете Apache, он будет обрабатывать большое количество буферизации и параллелизма для вас. В самом деле, с mod_wsgi, у вас может быть много и много бэкэнд-процессов одновременно. Пока вы не станете бенчмарком, вы не можете быть уверены, но рабочая нагрузка, с которой он может справиться, часто огромна. –
Хорошо. Спасибо, что сэкономили мне работу на N часов. Основная забота обо мне заключалась в том, что через пару секунд это было так долго. Одна из моих личных целей состояла в том, чтобы обеспечить хороший пользовательский интерфейс, и я подумал, что пользователь смотрит на пустой экран в течение пары секунд, пока изображение генерируется и отправляется, будет подпункт. Если бы была очередь, я мог бы, по крайней мере, опросить и держать их занятыми сообщением или чем-то посмотреть. –
@ random_person: «глядя на пустой экран»? Как HTML-страница может содержать «пустой экран»? Как ты это делаешь? В основном, когда я отправляю форму, я некоторое время смотрю на предыдущую страницу. Затем страница внезапно заменяется. Кроме того, многие люди любят бездельников в Javascript, чтобы показать некоторые действия. Но я не знаю, как сделать «пустой экран» в браузере. Вы можете это объяснить? –