2015-03-05 3 views
2

Я создал приложение для мониторинга удаленных объектов.Обмен сообщениями между Django и Twisted

Описание приложения: Twisted связывается с удаленными контроллерами, а затем сохраняет измеренные данные в базу данных через «adbapi». Django используется как веб-интерфейс.

Задача: Django использует модели для доступа к базе данных. Twisted использует необработанные SQL-запросы, генерирует предупреждения и другие операции перед сохранением. Я хочу переместить всю логику с Twisted на Django. Так что Twisted будет слоем между удаленными контроллерами и Django. Django будет использовать модели и сохранять измеренные данные, выполнять различные операции и так далее.

Вопрос: Лучший способ организовать связь между Twisted и Django? Двухсторонняя коммуникационная шина между ними. На данный момент у меня есть 3 варианта:

  1. Выполните http POST-запрос через getPage из twisted.web.client, а с другой стороны обработайте его Django.
  2. Используйте RabbitMQ и модуль pika как транспорт по витой стороне. Используйте Django-автономное приложение как демон на другой стороне.

Я считаю, что должно быть лучшее решение, чем мое предложение.

P.S .: base structure

ответ

0

Ответ на свой вопрос: сейчас я использовал RabbitMQ в качестве транспорта. На скрученный сторона б/у pika модуль через это adapter. На django сторона Я создал автономный скрипт django в качестве демона. Daemon бесконечно ждет новых сообщений от RabbitMQ через модуль pika.

Сообщите мне, если будет лучшее решение.

+1

Это. С помощью очереди вы можете масштабировать это горизонтально и избегать жестких зависимостей. Мы очень часто используем очереди, чтобы общаться между Django, скрученными, графитированными, логарифмически, эластичным поиском и т. Д. «Сообщение для хранения, база данных для истории» –

+0

Спасибо за ваш ответ. Кстати: хорошо ли использовать автономный скрипт Django в качестве демона? – zenio

+0

Да, абсолютно. Для этого были предназначены команды управления Django. Просто убедитесь, что вы запускаете их под контролем или другим менеджером демонов. –

Смежные вопросы