Начать daemonized сервис с помощью djangos manage.py пользовательская команда?

Я получил пользовательскую команду в своем допускающем повторное использование django приложении, которое я хочу начать daemonized сервис и затем возвратить, оставляя сервисное выполнение.

Я реализовал свой сервис как простой класс с начинать-методом. Когда запуск называют, он работает в вечном цикле, спящем в течение 10 секунд, затем с помощью django orm для проверки базы данных, настроенной в проекты settings.py файл, проверки на записи в данной папке.

Я хочу смочь к:

./manage.py startservice

какие удары моего обслуживания и возвратов. Затем в той же оболочке:

./manage.py runserver

и начните добавлять записи в определенной таблице базы данных, которые в течение 5 секунд взяты сервисом, работающим в фоновом режиме, и обработаны.

Я посмотрел на сельдерей для более основанного на очереди сообщений подхода, но он полагается на слишком большое количество другого материала. Важно, чтобы все это следовало за допускающим повторное использование шаблоном приложения django.

Какие-либо подсказки или мысли?

1
задан ThinkingStiff 14 March 2013 в 07:44
поделиться

2 ответа

Почему вы хотите запускать службу как отдельный процесс?

Запускать в потоке в том же процессе, что и сервер выполнения.

0
ответ дан 2 September 2019 в 23:12
поделиться

У меня есть библиотека django-initd , чтобы справиться с этим: см. проект на GitHub .

Django фактически включает в себя утилиту для демонизации процесса, в django.utils.daemonize моя библиотека отвечает за запуск / завершение работы, ведение журнала и взаимодействие с командой управления. Мне было бы интересно узнать, будет ли это полезно для вас.

2
ответ дан 2 September 2019 в 23:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: