Есть ли известные проблемы с django и многопоточностью? - PullRequest
1 голос
/ 27 октября 2009

Мне нужно разработать приложение, которое будет работать рядом с django-приложением. Это будет первый раз, когда я разрабатываю многопоточное приложение, которое запускается рядом с django-приложением, поэтому есть ли какие-то «ошибки» и «ловушки», о которых мне следует знать?

Ответы [ 3 ]

2 голосов
/ 27 октября 2009

Как правило, ваше приложение Django уже многопоточное. Именно так работают большинство стандартных серверов Django - они могут допускать отправку запросов к ним несколькими потоками WSGI.

Кроме того, почти всегда Django работает под Apache, который также является многопоточным.

Если вы используете mod_wsgi, то Django может быть частью процесса Apache или отдельным процессом.

Все, что работает «бок о бок» (что бы это ни значило), будет вне Apache, вне Django и в отдельном процессе.

Таким образом, любые соображения о многопоточности не применяются между вашим процессом Apache (который содержит Django) и вашим другим процессом.

0 голосов
/ 27 октября 2009

Если вы хотите представить свое django-приложение внешнему программному обеспечению, вам нужно создать API для вашего приложения.

Вы должны посмотреть на REST http://code.google.com/p/django-rest-interface/ и XMLRPC http://code.google.com/p/django-xmlrpc/

Многопоточная природа внешнего приложения не является проблемой для django, обслуживаемого производственным веб-сервером (например, Apache), потому что django по своей конструкции способен параллельно обслуживать множество запросов

Надеюсь, это поможет

0 голосов
/ 27 октября 2009

Что вы имеете в виду под django-приложением? Не могли бы вы рассказать немного о том, чего вы планируете достичь? Тогда помощь / ответ должны быть проще.


Ответ на первое редактирование ОП


Ах. Окей. Я встречал такое приложение, которое делает именно то, что вы хотите. Это называется feedjack, и вы можете найти его http://www.feedjack.org. Я пытался сделать что-то подобное. Вообще, я думаю, что вы будете согласны с таким случаем (отдельный процесс, использующий ORM Джанго для заполнения БД данными). По крайней мере, у меня не было таких проблем, когда я использовал их скрипт вместе с моим похожим приложением django.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...