Какая польза от сельдерея в python? - PullRequest
1 голос
/ 16 апреля 2020

Я запутался в сельдерее. Например, я хочу загрузить файл данных, и загрузка без сельдерея занимает 10 секунд. С сельдереем, как пользователь получит выгоду? Это займет столько же времени для загрузки данных?

Ответы [ 2 ]

0 голосов
/ 16 апреля 2020

Celery и подобные системы, такие как Huey, созданы для того, чтобы помочь нам распределить (разгрузить) количество процессов, которые обычно не могут выполнять одновременно на одной машине, или это приведет к значительному снижению производительности, если Вы делаете это. Ключевое слово здесь - DISTRIBUTED.

Вы упомянули загрузку файла. Если это единственный файл, который вам нужно скачать, и это все, то вам не нужен Celery. Как насчет более сложного сценария - вам нужно скачать 100000 файлов? Как насчет еще более сложного - эти 100000 файлов должны быть проанализированы, а процесс синтаксического анализа требует значительных ресурсов процессора?

Кроме того, Celery поможет вам повторить попытку неудачных задач, войти в систему, отслеживать и т. Д. c.

0 голосов
/ 16 апреля 2020

Обычно пользователь должен ждать, чтобы загрузить файл данных для выполнения на сервере. Но с помощью сельдерея операция будет выполняться на сервере и пользователь не будет вовлечен. Даже в случае сбоя приложения эта задача будет поставлена ​​в очередь.

Celery будет отслеживать работу, которую вы ему отправляете, в базе данных, такой как Redis или RabbitMQ. Это позволяет сохранить состояние процесса вашего сервера приложений, что означает, что даже в случае сбоя сервера приложений ваша очередь заданий останется. Сельдерей также позволяет отслеживать задачи, которые не удается.

...