Найти - Пользователи
Полная версия: Celery, вынести выполнение ресурсоемких задач на другую машину
Начало » Django » Celery, вынести выполнение ресурсоемких задач на другую машину
1
moskrc
Добрый день!

Хочу спросить про Celery. У меня есть проект, и в нем 3 задачи которые я запускаю по крону (management commands). Эти задачи очень ресурсоемкие и сильно грузят сервер на котором крутится web приложение.

Мне хочется чтобы эти задачи выполнялись на другом компьютере (есть отдельный сервер) и результат ложился в базу данных первого.

Можно было бы сделать это скопировав весь проект на другой сервер, не запускать там веб, а дергать только эти задачи (через cron). Но это как то очень потому что будет две одинаковые копии проекта, и если я сделаю какое нибудь изменение то нужно будет заливать на сервер с web и потом копировать на сервер который выделен под ресурсоемкие задачи… Неохота..

Можно ли такое сделать с помощью Celery? Т.е. чтобы проект был в одном экземпляре, а мои задачи выполнялись на другом сервере? Или все равно прийдется копировать все файлы туда где будет выполняться?

Спасибо.
kachayev
moskrc
и если я сделаю какое нибудь изменение то нужно будет заливать на сервер с web и потом копировать на сервер который выделен под ресурсоемкие задачи…
настройте себе нормальную процедуру деплоймента, через тот же Fabric. и обновляйте код одновременно на двух серверах (я же надеюсь вы это делаете не копированием директорий, а через VCS, сложностей с этим нет).

так или иначе, на “другом” сервере должен быть весь код, нужный для выполнения тасков. Celery с доставкой кода вам не поможет.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB