Я разрабатываю приложение Python для сервера, использующего Django + WSGI + Apache под Debian Linux. Приложение имеет веб-интерфейс, а также
интерфейс командной строки (который все еще использует модели django ..., просто не использует представления и шаблоны).
Бэкэнд базы данных - SQLite3.
Это приложение также должно периодически запускать некоторые задания. Я написал Unix-подобный демон, который использует python-gobject и python-glib и выполняет такие задания следующим образом:
gobject.timeout_add_seconds(seconds, someCallback...)
gobject.timeout_add_seconds(seconds, someCallback...)
...
gobject.timeout_add_seconds(seconds, someCallback...)
glib.MainLoop().run()
Я проверил это, и есть некоторые странные проблемы с записанными данными в sqlite db. Я думаю, это потому, что есть два экземпляра Python, которые читают и пишут из / в одну базу данных sqlite. Один для apache + wsgi и один для моего собственного демона. (Или событие 3 экземпляра Python, когда я использую интерфейс командной строки)
Мой вопрос: что мне порекомендовать? Поместите эти timeout_add и MainLoop в мой "dj_survey.wsgi" для запуска при запуске apache?